Страница 3 из 10

Re: Создать отчет в Word из Excel

Добавлено: 19 мар 2008, 07:50
seergy
ДА будет и вам счастье...

Re: Создать отчет в Word из Excel

Добавлено: 19 мар 2008, 09:11
VictorM
Ну вот и ладушки... :)
Хочется только заметить:
в примерах выделенный диапазон Range("A1:B4") задавался жестко только для демонстрации работоспособности. В Вашем же случае нужно позаботиться о том, чтобы перед созданием документа был выделен нужный Вам диапазон данных.
В противном случае в документ может "уйти" не то что нужно.

Re: Создать отчет в Word из Excel

Добавлено: 19 мар 2008, 12:29
seergy
А формат и рамки не коаируются ?. Например объединённые ячейки...
Или это не возможно
С уважением...

Re: Создать отчет в Word из Excel

Добавлено: 19 мар 2008, 12:36
VictorM
seergy, почему же невозможно.

Код: Выделить всё

Selection.PasteExcelTable False, True, False
получите таблицу, которая не будет связана с Excel.
*****
p.s. см. вложение

Re: Создать отчет в Word из Excel

Добавлено: 21 мар 2008, 17:28
evgenius_b
Teslenko_EA писал(а):Здравствуйте zedby.
Ваш код вполне работоспособный, но для его выполнения, библиотека Microsoft.Word, должна быть подключена в проекте Excel.
Евгений.
Подсоединил в Referense Excell -я Microsoft Word 11.0 Object Library и вообще все, что хоть отдаленно в названии имеет Office, но некоторые команды не выполняются.

Например печать текста и вставка таблиц из Excel выполняется:

Dim appWD As Word.Application
Set appWD = CreateObject("Word.Application")
appWD.Visible = True
appWD.Documents.Add

appWD.Selection.TypeText "Табл.1: Информация о позиции"
Workbooks(ReportTemplate).Worksheets(1).Activate
Worksheets(1).Range("B8:I14").Copy
appWD.Activate

appWD.Selection.Paste
appWD.Selection.Tables(1).AutoFitBehavior (wdAutoFitWindow)
appWD.Selection.TypeParagraph

А вот создать пустую таблицу не получается, например:

appWD.ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=1, NumColumns:= _
1, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed

В чем прикол?

Re: Создать отчет в Word из Excel

Добавлено: 24 мар 2008, 13:54
seergy
VictorM, Вы мне (и не только мне) очень помогли, а что за ошибка см. файл
А возможно сохранять в ворд где стоит курсор например на стр. 29

Re: Создать отчет в Word из Excel

Добавлено: 24 мар 2008, 14:10
VictorM
1. По поводу ошибки - ничего не могу пока сказать. У меня все работает четко. (проверил специально выложенный файл).
2. стр.29 это строка или страница?

Re: Создать отчет в Word из Excel

Добавлено: 24 мар 2008, 14:18
seergy
Т.е то место, где стоит или поставлен курсор мыши в ворде например на стр. 5 сегодня, на стр 29 завтра, через месяц на первой. т.е куда необходимо пользователю в документе ворд...
С уважением ...

Re: Создать отчет в Word из Excel

Добавлено: 24 мар 2008, 15:06
seergy
Как быть если лист скрыт например в редакторе VBA или в ручную... выдаёт ошибку
в месте:
Sheets("Лист1").Select
С уважением...

Re: Создать отчет в Word из Excel

Добавлено: 24 мар 2008, 17:30
VictorM
Если лист скрыт, конечно будет выдавать ошибку.
Чтобы этого избежать в начале процедуры пропишите

Код: Выделить всё

Worksheets("Лист1").Visible = True
'Ваша процедура
Worksheets("Лист1").Visible = False
Следут заметить, что аналогичная проблема будет, если лист защищен паролем.
В этом случае можно поступить аналогичным способом или защищать лист через VBA.
см. http://forum.developing.ru/showthread.php?t=13158