Здравствуйте, Позвольте сразу проинформировать, что с этой же проблемой обращался на один из схожих форумов, что как я понял правилами не запрещается. Ссылка. Я научился вставлять текст, картинки и таблицы в нужные места отчета Word, но не могу разобратся с последующим форматированием. Т.е. как изменить ширину вставленной таблицы. Как изменить размеры вставленной картинки. (Для картинок способ нашел, но он мне не очень нравится). Заранее спасибо если сможете посоветовать. Под спойлером код, которым пользуюсь. Так же, во вложении файлы Excel и шаблона Word, если будет удобнее посмотреть там. Еще раз, спасибо.
[vba]
Код
Sub Button5_Click()
Dim wrdApp As Word.Application Dim wrdDoc As Word.Document
'путь к шаблону Word HomeDir$ = ThisWorkbook.Path
Set wrdApp = CreateObject("Word.Application") wrdApp.Visible = False Set wrdDoc = wrdApp.Documents.Open(HomeDir$ & "\Template1.docx")
'Замена на текст из ячейки В1 в документе wrdDoc.Bookmarks("Param1").Range.Text = Worksheets("Sheet1").Range("B1")
'Замена на текст из ячейки В1 в колонтитуле wrdDoc.Bookmarks("hdParam1").Range.Text = Worksheets("Sheet1").Range("B1")
'Вставка картинки с лиса в указанное место документа Worksheets("Sheet1").Shapes("Picture 2").Copy wrdDoc.Bookmarks("Picture1").Range.Paste
With wrdDoc.InlineShapes(1) .LockAspectRatio = msoFalse .Width = 100 .Height = 100 End With
'Вставка таблицы с листа в указанное место Dim rng As Range Set rng = Worksheets("Sheet1").Range("B11:E16") rng.Copy wrdDoc.Bookmarks("Tbl1").Range.PasteExcelTable True, False, False
With wrdDoc.Tables(1)
'Сохранение изменненного файла под новым именем, что бы не портить шаблон nameOut$ = InputBox("Save as ") wrdDoc.SaveAs HomeDir$ & "\" & nameOut$
wrdDoc.Close wrdApp.Quit
Set wrdDoc = Nothing Set wrdApp = Nothing
End Sub
[/vba]
Здравствуйте, Позвольте сразу проинформировать, что с этой же проблемой обращался на один из схожих форумов, что как я понял правилами не запрещается. Ссылка. Я научился вставлять текст, картинки и таблицы в нужные места отчета Word, но не могу разобратся с последующим форматированием. Т.е. как изменить ширину вставленной таблицы. Как изменить размеры вставленной картинки. (Для картинок способ нашел, но он мне не очень нравится). Заранее спасибо если сможете посоветовать. Под спойлером код, которым пользуюсь. Так же, во вложении файлы Excel и шаблона Word, если будет удобнее посмотреть там. Еще раз, спасибо.
[vba]
Код
Sub Button5_Click()
Dim wrdApp As Word.Application Dim wrdDoc As Word.Document
'путь к шаблону Word HomeDir$ = ThisWorkbook.Path
Set wrdApp = CreateObject("Word.Application") wrdApp.Visible = False Set wrdDoc = wrdApp.Documents.Open(HomeDir$ & "\Template1.docx")
'Замена на текст из ячейки В1 в документе wrdDoc.Bookmarks("Param1").Range.Text = Worksheets("Sheet1").Range("B1")
'Замена на текст из ячейки В1 в колонтитуле wrdDoc.Bookmarks("hdParam1").Range.Text = Worksheets("Sheet1").Range("B1")
'Вставка картинки с лиса в указанное место документа Worksheets("Sheet1").Shapes("Picture 2").Copy wrdDoc.Bookmarks("Picture1").Range.Paste
With wrdDoc.InlineShapes(1) .LockAspectRatio = msoFalse .Width = 100 .Height = 100 End With
'Вставка таблицы с листа в указанное место Dim rng As Range Set rng = Worksheets("Sheet1").Range("B11:E16") rng.Copy wrdDoc.Bookmarks("Tbl1").Range.PasteExcelTable True, False, False
With wrdDoc.Tables(1)
'Сохранение изменненного файла под новым именем, что бы не портить шаблон nameOut$ = InputBox("Save as ") wrdDoc.SaveAs HomeDir$ & "\" & nameOut$