Страницы: 1
RSS
Форматирование таблиц и текста имортируемых из Excel в Word через Bookmarks
 
Добрый день!

Подскажите, пожалуйста, как мне поправить макрос, чтобы:
1) Вставка таблицы (закладка "Tablo_0") происходила по центру и для нее удалить интервал перед абзацем и после абзаца;
2) Для вставляемого текста из ячейки (закладка "bookmark_3") применить шрифт Calibri
Код
Sub Format_Excel_Word_transfer()
Dim wda As Word.Application
  
Set wda = CreateObject("Word.Application")
  
With wda
.Visible = True
.Documents.Open "U:\Format_Excel_Word_transfer\Templateform.dotx"
.ActiveDocument.Bookmarks("Table_0").Select
End With
  
Worksheets("Sheet1").Activate
Range("A1:B2").Copy
wda.Selection.PasteSpecial False, False, False

With wda
.Visible = True
.Documents.Open "U:\Format_Excel_Word_transfer\Templateform.dotx"
.ActiveDocument.Bookmarks("bookmark_3").Select
End With
  
Worksheets("Sheet1").Activate
Range("C2").Copy
wda.Selection.PasteSpecial

With wda
.Visible = True
.ActiveDocument.SaveAs Filename:= _
        "U:\Format_Excel_Word_transfer\" & "Test " & Format(Now, "ddMMyy") & ".docx", _
        FileFormat:=wdFormatXMLDocument, LockComments:=False, Password:="", _
        AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
        EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
        :=False, SaveAsAOCELetter:=False
End With
End Sub

Спасибо!
 
А зачем вам такие извращения, причем с копипастом?
"Оформление" печатного документа должно быть произведено в самом Word, в закладки/ссылки/поля мы просто должны подставлять необходимые значения. Тогда не надо будет думать над цветами/шрифтами и прочими выравниваниями абзацев...

В предлагаемом варианте я сразу оформил bookmark_3 как нужно (шрифт), и таблица тоже сразу вставлена в документ (в неё подставляются 4 закладки для ячеек, тоже оформленные). Конечно, если таблица будет многострочной - надо будет придумывать немного другие методы, а то надоест руками сотню закладок рисовать.

P.S. Кстати, с чего бы вы два раза шаблон открываете? :)
 
AndreTM,Большое спасибо, я просто пытаюсь научиться как переносить данные из экселя в ворд с помощью макросов. К сожалению, в моем варианте как раз объемная таблицы (не та что в примере, в рабочем варианте - 40 строк на 8 столбцов)  и вот так ее муторно обрабатывать.Благодарю еще раз, что уделили время моей проблеме. Ваш код я обязательно изучу 8)
Цитата
AndreTM написал:
P.S. Кстати, с чего бы вы два раза шаблон открываете?  
Ой, да это от не знаний=)
Страницы: 1
Наверх