Имя: Пароль:
1C
1С v8
Создание таблицы в ворде
0 Анка_Пивовар
 
05.03.15
13:16
Не получается создать таблицу в ворде через 1с.
делаю как тут написано v8: Создание и редактирование таблиц в ворде!
он тупо не создает таблицу.
помогите, чего не верно делаю.
вот мой текст:

АктивныйДокумент = ПолучитьМакет("Макет");
    КомОбъект = АктивныйДокумент.Получить();
    КомОбъект.Application.Visible=1;
таблкол=1; //Номер таблицы, по счету, в документе word (параметр вводил, така как у меня тоблицы создавались в цикле)
        КомОбъект.Application.ActiveDocument.Paragraphs.Add(); //добавляем параграф
        Номер=КомОбъект.Application.ActiveDocument.Paragraphs.Count(); //получаем номер параграфа
        КомОбъект.Application.ActiveDocument.Tables.add(КомОбъект.Application.ActiveDocument.Paragraphs(Номер).Range,1,5); //создаем новую таблицу размером 1*4 (1 строка и 4 колонки). Вставляем ее в параграф с соответствующим номером "Номер" (в данном случае в конец документа).
        КомОбъект.Application.ActiveDocument.Tables(таблкол).AutoFormat(16); //выставляем формат отображения таблицы. В данном случае таблица будет с обычной границей, без заливки. Параметр варьируется от 0 до...(примерно несколько десятков). Удобно просто в цикле перебрать, а потом выбрать нужный!
        КомОбъект.Application.ActiveDocument.Tables(таблкол).Rows(1).Cells(1).Range.Text =  Строка("Номенклатура");    //заполняем яцейки таблицы текстом    
        КомОбъект.Application.ActiveDocument.Tables(таблкол).Rows(1).Cells(2).Range.Text =  Строка("Количество, шт."); //заполняем яцейки таблицы текстом        
        КомОбъект.Application.ActiveDocument.Tables(таблкол).Rows(1).Cells(3).Range.Text =  Строка("Цена, руб."); //заполняем яцейки таблицы текстом
        КомОбъект.Application.ActiveDocument.Tables(таблкол).Rows(1).Cells(4).Range.Text =  Строка("Стоимость, руб."); //заполняем яцейки таблицы текстом          
        КомОбъект.Application.ActiveDocument.Tables(таблкол).Rows(1).Cells(5).Range.Text =  Строка("Скидка %"); //заполняем яцейки таблицы текстом  
        КомОбъект.Application.ActiveDocument.Range( КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,1).Range.Start,КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,5).Range.End).Font.Bold = Истина; // выделяем область яцеек с 1 по 4 для первой строки и выставляем шрифт "Жирный"
        КомОбъект.Application.ActiveDocument.Range( КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,1).Range.Start,КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,5).Range.End).Font.size = 14; // выделяем область яцеек с 1 по 4 для первой строки и выставляем размер шрифта "14"            
        КомОбъект.Application.ActiveDocument.Range( КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,1).Range.Start,КомОбъект.Application.ActiveDocument.Tables(таблкол).Cell(1,5).Range.End).ParagraphFormat.Alignment = 1; // выделяем область яцеек с 1 по 4 для первой строки и выставляем выравнивание текста "По центру". Параметр варьируется от 0 до 3. (левый край, центр, правый край, по ширине  соответственно)
        
        инд=2;
        Табл = КомОбъект.Tables(1);
        номерпп = 1;
        Для Каждого стр Из СсылкаНаОбъект.Товары Цикл
            Табл.Rows.Add();
            Табл.Cell(инд,1).Range.Text =  Строка(стр.Номенклатура);
            Табл.Cell(инд,2).Range.Text =  Строка(стр.Количество);
            Табл.Cell(инд,3).Range.Text =  Строка(стр.Цена);
            Табл.Cell(инд,4).Range.Text =  Строка(стр.Сумма);
            Табл.Cell(инд,5).Range.Text =  Строка(стр.ПроцентСкидкиНаценки);
            инд = инд + 1;
            номерпп = номерпп +1;
        КонецЦикла;

    
    КомОбъект.Fields.UpDate();
    КомОбъект = 0;
1 Анка_Пивовар
 
05.03.15
13:32
ап