1

Тема: VBA: перенос в Word из Excel представления ячейки вместо содержимого.

Макрос должен заполнять шаблоны Word данными из таблицы Excel. Хочу понять, как скопировать само представление ячейки вместо содержимого. Например, чтобы при записи даты использовался формат ячейки "31 мая 2013 года" вместо "31.05.2013", как записано в ней.

For i = 1 To КоличествоОбрабатываемыхСтолбцов
                FindText = Cells(1, i): ReplaceText = .Cells(i)
                                
                With WD.Range.Find
                    .Text = FindText
                    .Replacement.Text = ReplaceText
                    .Forward = True
                    .Wrap = 1
                    .Format = False: .MatchCase = False
                    .MatchWholeWord = False
                    .MatchWildcards = False
                    .MatchSoundsLike = False
                    .MatchAllWordForms = False
                    .Execute Replace:=2
                End With
                DoEvents
            Next i

2

Re: VBA: перенос в Word из Excel представления ячейки вместо содержимого.

Попробуйте преобразовать дату непосредственно в Excel. Оператор, преобразующий дату в формат "31 мая 2013 г." будет в Excel выглядеть приблизительно так: 

Selection.NumberFormat = "[$-F800]dddd, mmmm dd, yyyy"

или

Selection.NumberFormat = "[$-FC19]dd mmmm yyyy г.;@"

Преобразование в формат "31 мая 2013 года", о котором вы написали, может выглядеть так: 

Selection.NumberFormat = "[$-FC19]dd mmmm yyyy года;@"
Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.