![]() |
![]() |
![]() |
|
Подскажите как добавить строку в таблицу вордовского документа | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
27.12.11
✎
09:12
|
АктивныйДокумент = ПолучитьМакет("Макет");
КомОбъект = АктивныйДокумент.Получить(); в документе уже есть таблица - шапка + 1 строка надо добавить строку в таблицу как? |
|||
1
RomaH
naïve
27.12.11
✎
09:17
|
нашел через добавление ячеек от курсора
MsWord.Application.Visible = 0; Word = MsWord.Application; Док=Word.Documents(1); Док.Activate(); Если Массив.Количество()>1 Тогда //Переместиться вниз на 10 строк от начала документа Word.Selection.MoveDown(,10); //10 строка - первая строка таблицы //назад на 1 символ (окончание строки таблицы) Word.Selection.MoveLeft(,1); //кво документов которые необходимо забить в табличную часть Word.Selection.InsertRows(Массив.Количество()-1); Word.Selection.MoveLeft(,1); Для й = 11 по Массив.Количество()+9 Цикл ЗаполнитьСтрокуТЧ(0,Word); Word.Selection.MoveRight(,1); КонецЦикла; КонецЕсли; а без "интерактивных" действий? |
|||
2
Stim213
27.12.11
✎
09:20
|
юзать макросы
|
|||
3
Масянька
27.12.11
✎
09:20
|
мWord = СоздатьОбъект("Word.Application");
мNewDoc = мWord.Documents; мДок = мNewDoc.Add(мШаблон, 0, 0, 1); мОбъект = мДок.Content; мОбъект.Tables(1).Rows.Add(); // добавляем строку в конец таблицы |
|||
4
RomaH
naïve
27.12.11
✎
09:46
|
(3) о - т.е. к таблицы это коллекция, и строки - коллекция
и ячейки в строке ... думаю все же будем от этого плясать |
|||
5
Масянька
27.12.11
✎
10:00
|
(4) Нечто в этом роде. Если в Add указать число, то строка добавляется после строки с указанным числом.
|
|||
6
RomaH
naïve
27.12.11
✎
10:41
|
в итоге:
СтрокаДок = КомОбъект.Tables(1).Rows.Add(КомОбъект.Tables(1).Rows(МестоВставки)); МестоВставки = МестоВставки + 1; СтрокаДок.Cells(1).Range.Text = ?(ПустаяСтрока(СтрокаНадбавки.ВидРасчета.ДКБ_ОфициальноеНаименование),СтрокаНадбавки.ВидРасчета.Наименование,СтрокаНадбавки.ВидРасчета.ДКБ_ОфициальноеНаименование); Если СтрокаНадбавки.ВидРасчета.СпособРасчета = Перечисления.СпособыРасчетаОплатыТруда.Процентом Тогда СтрокаДок.Cells(2).Range.Text = СтрокаНадбавки.Показатель; КонецЕсли; СтрокаДок.Cells(3).Range.Text = Формат(СтрокаНадбавки.РазмерНадбавки,"ЧЦ=15; ЧДЦ=2; ДФ="); |
|||
7
RomaH
naïve
27.12.11
✎
10:43
|
для вставки форматированой строки надо иметь одну строку шаблон - КомОбъект.Tables(1).Rows(МестоВставки)
её по окончании формирования можно удаить, или использовать по назначению |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |