Работая с WORD2010 в Windows 10, я хочу скопировать все подписи к рисункам статьи и расположить их в виде списка в конце текста.
Сначала я попытался с помощью массива.Я скопировал подписи к рисункам в виде строк с помощью Selection.formattedText, поместил их в массив и использовал Selection.typeText, чтобы вставить строки в конце документа Word в виде списка.Естественно, проблема в том, что формат, например, символ для греческого алфавита и буквы нижнего регистра не сохраняется.Поэтому я хотел использовать Selection.CopyFormat, а затем selection.replacement.text = Selection.FormattedText.Конечно же, та же проблема.В принципе, это работает, потому что вставка текста непосредственно после копирования дает формат записи.Однако я хочу скопировать его, а затем выполнить поиск по определенной «фиктивной» строке (Figure_XX_1) в конце документа и заменить выбранную фиктивную строку скопированным текстом.В этом случае я всегда получаю последний код, который я скопировал (перед запуском макроса) в буфер обмена вместо моего скопированного текста.Интересно, почему это происходит ..
Sub Makro1()
'
Selection.WholeStory
With Selection
.EndKey Unit:=wdStory, Extend:=wdMove
.InsertBreak Type:=wdSectionBreakNextPage
.InsertAfter ("Titles of Figures" & Chr(13) & "Figure_XX_1")&Chr(13)
End With
ActiveDocument.InlineShapes(12).Select
Selection.GoTo What:=wdGoToField, Which:=wdGoToNext, Count:=1, Name:="SEQ Figure *"
Selection.EndKey Unit:=wdLine
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.HomeKey Unit:=wdLine
Selection.Paragraphs(1).Range.Select ' select figure caption
Selection.CopyFormat ' copy figure caption
With Selection
.Find.Text = "Figure_XX_1"
.Find.Execute
.PasteAndFormat (wdFormatOriginalFormatting)
End With
End Sub
Может кто-нибудь помочь мне вставить скопированный отформатированный текст ??Я не люблю программировать с выделением, но не вижу другого способа сохранить формат .... Возможно, есть способ сохранить греческие буквы с помощью юникода?Тогда я бы отдельно рассмотрел проблему с индексом, проверив подстрок позже некоторым кодом.Или есть способ заставить вышеуказанный код работать желаемым образом ??
Большое спасибо ..