Здравствуйте. Я не программист, но есть вопрос. У меня есть макросв excel, его задача взять данные из таблицы в excel и перенести их в шаблон word. Проблема в том, что если данных на одну страницу, то всё нормально, Таблица рисуется в Word по заданным координатам. А вот если данных в excel на две страницы, то в шаблоне word на первой странице таблица с данными рисуется по заданным координатам, а на второй и следующих страницах я задать координаты вывода таблицы с данными не могу. Как задавать координаты вывода таблицы с данными в шабоне word на второй и прочих страницах? Файлы приложил
Здравствуйте. Я не программист, но есть вопрос. У меня есть макросв excel, его задача взять данные из таблицы в excel и перенести их в шаблон word. Проблема в том, что если данных на одну страницу, то всё нормально, Таблица рисуется в Word по заданным координатам. А вот если данных в excel на две страницы, то в шаблоне word на первой странице таблица с данными рисуется по заданным координатам, а на второй и следующих страницах я задать координаты вывода таблицы с данными не могу. Как задавать координаты вывода таблицы с данными в шабоне word на второй и прочих страницах? Файлы приложилSlaventy
Вам бы следовало прислушаться к сказанному Медведем на Планете, а не плодить дубликаты тем. Поскольку тема Word там может быть удалена, дублирую тут. Отрезал Excel. Тестируйте в Word'e.
Dim WA As Object, WD As Object ' Set WA = CreateObject("Word.Application") ' без подключения библиотеки Word Dim Table1 As Object Set WA = Application ' без подключения библиотеки Word
' Set WD = WA.Documents.Add(ПутьШаблона) Set WD = WA.ActiveDocument WD.PageSetup.TopMargin = Application.CentimetersToPoints(3.7) 'отступ сверху WD.PageSetup.LeftMargin = Application.CentimetersToPoints(2.2) 'отступ слева
' Set Table1 = WD.Tables.Add(WD.Range(Start:=0, End:=0), 24, 9) 'рабочая Set Table1 = WD.Tables.Add(WD.Range(Start:=0, End:=0), DocExcelMaxRow, 9) 'рабочая
n = rowsOne Do While n < DocExcelMaxRow - 1 .Cell(n, 1).Select Selection.ParagraphFormat.PageBreakBefore = wdToggle n = n + rowsStep DoEvents Loop
.Cell(1, 2) = "nnn" .Cell(1, 3) = "55ggg" End With
' WD.SaveAs FileName ' ' WD.Close False ' False - без сохранения ' WA.Quit False ' MsgBox "Выгружено в word."
End Sub
[/vba]
Вам бы следовало прислушаться к сказанному Медведем на Планете, а не плодить дубликаты тем. Поскольку тема Word там может быть удалена, дублирую тут. Отрезал Excel. Тестируйте в Word'e.
Dim WA As Object, WD As Object ' Set WA = CreateObject("Word.Application") ' без подключения библиотеки Word Dim Table1 As Object Set WA = Application ' без подключения библиотеки Word
' Set WD = WA.Documents.Add(ПутьШаблона) Set WD = WA.ActiveDocument WD.PageSetup.TopMargin = Application.CentimetersToPoints(3.7) 'отступ сверху WD.PageSetup.LeftMargin = Application.CentimetersToPoints(2.2) 'отступ слева
' Set Table1 = WD.Tables.Add(WD.Range(Start:=0, End:=0), 24, 9) 'рабочая Set Table1 = WD.Tables.Add(WD.Range(Start:=0, End:=0), DocExcelMaxRow, 9) 'рабочая