Имя: Пароль:
1C
 
Word как заполнить таблицу в цикле?
0 leoway
 
02.07.07
12:52
Люди плиз.
Как заполнить таблицу Word в цикле?
1 leoway
 
02.07.07
15:21
Народ че никто не знает, как это сделать?
2 Babay
 
02.07.07
15:30
В ворде нажми "записать макрос", сделай необходимые тебе заполнения, останови запись и посмотри что там записалось. Затем оберни всё в цикл.
3 il
 
02.07.07
15:31
Ворд=СоздатьОбъект("Word.Application");
Док=Ворд.Documents.Open(Файл);
Таблицы=Док.Tables;
Для к=1 По Таблицы.Count Цикл
 Таблица=Таблицы.Item(к);
 Строки=Таблица.Rows;
 Колонки=Таблица.Columns;
 Для стр=1 По Строки.Count Цикл
   Для кол=1 По Колонки.Count Цикл
     Сообщить(Таблица.Cell.Item(стр,кол);
   КонецЦикла;
 КонецЦикла;
КонецЦикла;
4 leoway
 
02.07.07
15:35
А таблица должна быть фиксированной длины, или ее можно заполнять сколь душе угодно
5 il
 
02.07.07
15:52
По идее второе но у меня нет примера см (2)
6 leoway
 
02.07.07
15:56
Я смотрю что (3) это пойдет для Excele,  а Ворде куда пихать мои значения он не понимает
7 leoway
 
02.07.07
15:57
(3) как запустить этот макрос из 1С приэтом использую шаблоны?
8 dk
 
02.07.07
16:04
(4)

   Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter;
   
   Если СписокСотрудников.КоличествоСтрок() > 0 Тогда
       Таб = Документ.Tables.Add(Selection.Range, СписокСотрудников.КоличествоСтрок() + 1, 4);
   Иначе
       Таб = Документ.Tables.Add(Selection.Range, 2, 4);
   КонецЕсли;    //"Если СписокСотрудников.КоличествоСтрок() > 0 Тогда
   
   Таб.Columns.PreferredWidthType    = wdPreferredWidthPoints;
   Таб.Columns(1).PreferredWidth    = WordApp.CentimetersToPoints(1.3);
   Таб.Columns(2).PreferredWidth    = WordApp.CentimetersToPoints(7);
   Таб.Columns(3).PreferredWidth    = WordApp.CentimetersToPoints(5);
   Таб.Columns(4).PreferredWidth    = WordApp.CentimetersToPoints(3);
   
   Таб.Style                    = "Сетка таблицы";
   Таб.ApplyStyleHeadingRows    = xlTrue;
   Таб.ApplyStyleLastRow        = xlTrue;
   Таб.ApplyStyleFirstColumn    = xlTrue;
   Таб.ApplyStyleLastColumn    = xlTrue;
   
   Таб.Cell(1, 1).Range.Text    = "№№";
   Таб.Cell(1, 1).Range.Font.Bold    = xlTrue;
   
   Таб.Cell(1, 2).Range.Text    = "ФИО Работника";
   Таб.Cell(1, 2).Range.Font.Bold    = xlTrue;
   
   Таб.Cell(1, 3).Range.Text    = "№ текущего счета в рублях";
   Таб.Cell(1, 3).Range.Font.Bold    = xlTrue;
   
   Таб.Cell(1, 4).Range.Text    = "сумма перечислений";
   Таб.Cell(1, 4).Range.Font.Bold    = xlTrue;
   
   СписокСотрудников.ВыбратьСтроки();
   Пока СписокСотрудников.ПолучитьСтроку() > 0 Цикл
       НомерСтроки = СписокСотрудников.НомерСтроки + 1;
       Таб.Cell(НомерСтроки, 1).Range.Text    = Строка(СписокСотрудников.НомерСтроки);
       Таб.Cell(НомерСтроки, 2).Range.Text    = СокрЛП(СписокСотрудников.Сотрудник.Наименование);
       Таб.Cell(НомерСтроки, 3).Range.Text    = СписокСотрудников.НомерСчета;
       Таб.Cell(НомерСтроки, 4).Range.Text    = СписокСотрудников.Сумма;
   КонецЦикла;    //"Пока СписокСотрудников.ПолучитьСтроку() > 0 Цикл
9 у лю 427
 
02.07.07
16:20
$5
10 leoway
 
02.07.07
16:23
(4)к этой строке что вначале надо написать??

Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter;

Таб или Документ
11 leoway
 
02.07.07
16:41
(8) Таб = Документ.Tables.Add(Selection.Range, СписокСотрудников.КоличествоСтрок() + 1, 4);

еще ругается на Selection че делать?
12 meps
 
02.07.07
17:02
можно ли сделать таблицу в таблице?
13 dk
 
03.07.07
07:04

   Попытка
       scr                = СоздатьОбъект("MSScriptControl.ScriptControl");
       scr.language    = "vbscript";
       WordApp            = scr.eval("CreateObject(""Word.Application"")");
   Исключение
       Попытка
           WordApp = СоздатьОбъект("Word.Application");
       Исключение
           Сообщить("Не удалось открыть Word. " + ОписаниеОшибки());
           Возврат;
       КонецПопытки;
   КонецПопытки;
   WordApp.DisplayAlerts    = xlFalse;
   Документ = WordApp.Documents.Add();
   Документ.Activate();
   Selection = WordApp.Application.Selection;
14 leoway
 
03.07.07
13:13
материт на чем свет стоит

WordApp.DisplayAlerts    = xlFalse<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(211)}: Переменная не определена (xlFalse)
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(219)}: Переменная не определена (wdAlignParagraphCenter)
Таб.Columns.PreferredWidthType    = wdPreferredWidthPoints<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(228)}: Переменная не определена (wdPreferredWidthPoints)
Таб.ApplyStyleHeadingRows    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(235)}: Переменная не определена (xlTrue)
Таб.ApplyStyleLastRow        = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(236)}: Переменная не определена (xlTrue)
Таб.ApplyStyleFirstColumn    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(237)}: Переменная не определена (xlTrue)
Таб.ApplyStyleLastColumn    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(238)}: Переменная не определена (xlTrue)
Таб.Cell(1, 1).Range.Font.Bold    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(241)}: Переменная не определена (xlTrue)
Таб.Cell(1, 2).Range.Font.Bold    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(244)}: Переменная не определена (xlTrue)
Таб.Cell(1, 3).Range.Font.Bold    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(247)}: Переменная не определена (xlTrue)
Таб.Cell(1, 4).Range.Font.Bold    = xlTrue<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(250)}: Переменная не определена (xlTrue)
При проверке модуля обнаружены синтаксические ошибки!
15 AcaGost
 
03.07.07
13:28
xlTrue = -1
xlFalse = 0
16 leoway
 
03.07.07
13:56
хорошо а с этим как быть?

Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(222)}: Переменная не определена (wdAlignParagraphCenter)
Таб.Columns.PreferredWidthType    = wdPreferredWidthPoints<<?>>;
{Z:\1C общая\Фирмы\ЛэнгвичЛинк\Выгрузка в Банк word.ert(231)}: Переменная не определена (wdPreferredWidthPoints)
При проверке модуля обнаружены синтаксические ошибки!
17 AcaGost
 
03.07.07
14:07
wdPreferredWidthPoints = 3
18 AcaGost
 
03.07.07
14:09
wdAlignParagraphCenter = 1
19 leoway
 
03.07.07
14:20
попробую спасибо
20 dk
 
03.07.07
14:24

xlFalse = 0;
xlTrue = -1;

xlAutomatic            = -4105;
xlThin                = 2;
xlContinuous        = 1;
xlEdgeLeft            = 7;
xlEdgeTop            = 8;
xlEdgeBottom        = 9;
xlEdgeRight            = 10;
xlInsideVertical    = 11;
xlInsideHorizontal    = 12;

wdAlignParagraphRight    = 2;
wdAlignParagraphCenter    = 1;
wdPreferredWidthPoints    = 3;
wdAlignRowCenter        = 1;
wdAlignParagraphLeft    = 0;
21 dk
 
03.07.07
14:25
(19) С VBA совсем не дружишь?
22 dk
 
03.07.07
14:29
(19) Кстати "Выгрузка в Банк word.ert" что-то мне смутно напоминает. В какой банк выгружаешь?
23 leoway
 
03.07.07
15:37
Спасибо ребят я решил эту проблему, через шаблоны и макросы в Word. Если кому чего скинуть могу.
24 leoway
 
03.07.07
15:38
Отдельное спасибо хочу выразить  "dk"