Имя: Пароль:
1C
1С v8
Заполнение таб.части в Word'e... как ?
0 Tata001
 
01.08.12
12:08
просто с заполнением таблицы не работала..
есть шапка в документе,я её заполнчю след.образом
ОбъектВорд = Макет.Получить();
       
       // Документ из объекта и его активация
       Документ = ОбъектВорд.Application.Documents(1);
       Документ.Activate();
       
       // Выборка данных
       Выборка = ОбъектВорд.Application.Selection;
       
       // Поиск и замена маркеров
       Замена = Документ.Content.Find;
       
       РезультатЗамены = Замена.Execute("[ВЛице]", , , , , , , , , ВЛице, 2);
       РезультатЗамены = Замена.Execute("[ИмяОРГ]", , , , , , , , , ИмяОРГ, 2);

==================
а как мне таблицу заполнить ???? ведь у меня строки будут выводиться в цикле
1 Tata001
 
01.08.12
12:14
неохота мне табличный документ использовать...
2 izekia
 
01.08.12
12:15
3 Maxus43
 
01.08.12
12:16
// Получить таблицу как объект в отдельную переменную
   // учитывая тот факт, что таблица у нас единственная    
   Таблица = Документ.Tables.Item(1);

   // Записать данные в ячейку таблицы строка №1, колонка №1
   Таблица.Cell(1,1).Range().InsertAfter("Номенклатура");

   // Установить цвет фона в ячейке
   Таблица.Cell(1,1).Shading.BackgroundPatternColor = 16776960;
   Таблица.Cell(1,2).Range().InsertAfter("Цена");
   Таблица.Cell(1,2).Shading.BackgroundPatternColor = 16776960;
   Таблица.Cell(1,3).Range().InsertAfter("Ед.Изм.");
   Таблица.Cell(1,3).Shading.BackgroundPatternColor = 16776960;
   
   НомерСтроки = 1;
   Выборка = ВыборкаКоличества.Выбрать();

   Пока Выборка.Следующий() Цикл
       НомерСтроки = НомерСтроки + 1;
       
       Таблица.Cell(НомерСтроки,1).Range().InsertAfter(Выборка.Номенклатура);
       Таблица.Cell(НомерСтроки,2).Range().InsertAfter(Строка(Выборка.Цена));
       Таблица.Cell(НомерСтроки,3).Range().InsertAfter(Выборка.ЕдиницаИзмерения);
       
   КонецЦикла;    

может поможет
4 Масянька
 
01.08.12
12:16
// заполнение таблицы номенклатуры        
       
       Для СчетчикЦикла = 1 По Счет.КоличествоСтрок() Цикл
           
           мОбъект.Tables(1).Rows.Add();        // добавляем строку в конец таблицы
           
           Счет.ПолучитьСтрокуПоНомеру(СчетчикЦикла);
           
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,1).Range.Text = Счет.НомерСтроки;
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,2).Range.Text = СокрЛП(Счет.Номенклатура.ПолнНаименование);
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,3).Range.Text = СокрЛП(Формат(Счет.Количество, "Ч010.2"));
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,4).Range.Text = Строка(Счет.Единица);
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,5).Range.Text = глФрм(Счет.Цена);
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,6).Range.Text = глФрм(Счет.СуммаНДС);
           мОбъект.Tables(1).Cell(СчетчикЦикла + 2,7).Range.Text = глФрм(Счет.Сумма);
       КонецЦикла;
       
       // итоги
       мОбъект.Tables(2).Cell(1,2).Range.Text = СокрЛП(Формат(Счет.Итог("Количество"), "Ч010.2"));
       мОбъект.Tables(2).Cell(1,5).Range.Text = глФрм(Счет.Итог("СуммаНДС"));
       мОбъект.Tables(2).Cell(1,6).Range.Text = глФрм(Счет.Итог("Сумма"));
       
       // итоговая строка
       мСтрокаВсего = глФразаПрописью(Счет.КоличествоСтрок(), "наименован") +
                      ", на сумму " + глСуммаПрописью(Счет.Итог("Сумма"), глРубли) + ".";
       мОбъект.Find.Execute("[СтрокаВсего]",0,0,,,,,,,СокрЛП(мСтрокаВсего),2);      


только у меня после шапки разрыв и перед итоговой. Руками поправляю.
5 МихаилМ
 
01.08.12
12:18
во первых указвайте версии ПО

в разных версиях работа происходит по-разному.

в 2007 -2010

офисах должна быть коллекция таблиц (см документацию)

в 2000-2003 - коллекции нет. поиск таблиц через закладки .
6 Tata001
 
01.08.12
15:14
Огромное всем спасибо =)))
7 Tata001
 
01.08.12
15:16
Только вот вопрос... можно ли мне в цикле делать разрыв страницы и запускать шаблон по новой,что б не каждый раз документ запускался,а всё было в одном
8 МихаилМ
 
01.08.12
15:48
(7)
посмотрите, как работает слияние excel и word