Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
24 Апр 2018, 09:57
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Добавить строку в ТЧ word  (Прочитано 2823 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн bestname

  • **
  • Сообщений: 65
  • РЕПУТАЦИЯ: 3
  • КПД: 5%
  • Регистрация: 2015-06-10
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте. Формирую word файл. Никак не могу добавить строки из табличной части документа в word. Все получается, только если в ТЧ документа одна строка. Если больше, то получаю ошибку:

{Документ.ЗаказПокупателя.Форма.ФормаДокумента.Форма(3000)}: Ошибка при вызове метода контекста (Cell): Произошла исключительная ситуация (Microsoft Word): Запрашиваемый номер семейства не существует

Я так понимаю, что я обращаюсь к ячейке еще не созданной строки. Но я вроде как ее создаю. Наверное неправильно создаю.

	
        Договор = ПолучитьМакет("Макет");
MSWord = Договор.Получить();

Попытка
Doc = MSWord.Application.Documents(1);
Doc.Activate();

//Товары
ТекСтрока = ЭлементыФормы.Товары.ТекущаяСтрока;
Для Каждого ТекСтрока Из Товары Цикл

    НомерСтроки = ТекСтрока.НомерСтроки + 1;
    //Добавляем новую строку таблицы
    Doc.Tables(2).Rows.Add();

    Doc.Tables(2).Cell(НомерСтроки, 1).Range.Text = ТекСтрока.НомерСтроки;
    Doc.Tables(2).Cell(НомерСтроки, 2).Range.Text = ТекСтрока.Номенклатура.НаименованиеПолное;
    Doc.Tables(2).Cell(НомерСтроки, 3).Range.Text = ТекСтрока.ЕдиницаИзмерения.Наименование;
    Doc.Tables(2).Cell(НомерСтроки, 4).Range.Text = ТекСтрока.Количество;
    Doc.Tables(2).Cell(НомерСтроки, 5).Range.Text = ТекСтрока.Цена;
    Doc.Tables(2).Cell(НомерСтроки, 6).Range.Text = ТекСтрока.Сумма;
КонецЦикла;

    MSWord.Application.Visible = Истина;
    MSWord.Activate();
Исключение
    Сообщить(ОписаниеОшибки());
    MSWord.Application.Quit();   
КонецПопытки;   

возврат 0;
   

Что я делаю неправильно?


Оффлайн Rasty

  • *****
  • Сообщений: 997
  • РЕПУТАЦИЯ: 141
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
Doc.Tables(2).Cell(НомерСтроки,)<---- нет такого элемента
Добавлено: 29 Апр 2016, 15:50

т.е. по данному номеру строки не может найти элемент
Добавлено: 29 Апр 2016, 15:54

по идеи Doc.Tables(2).Rows.Add() должно вернуть вам строку
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн bestname

  • **
  • Сообщений: 65
  • РЕПУТАЦИЯ: 3
  • КПД: 5%
  • Регистрация: 2015-06-10
  • Сайт: 
  • Профессия: Ученик 1С
Короче я понял. Строка добавляется в конце таблицы. А мне нужно с определенного места(со второй строки). Я так понимаю, что в
Doc.Tables(2).Rows.Add();
мне нужно передать параметры?
Пишу
Doc.Tables(2).Rows.Add(2);
{Документ.ЗаказПокупателя.Форма.ФормаДокумента.Форма(2993)}: Ошибка при вызове метода контекста (Add): Произошла исключительная ситуация (Microsoft Word): Неверный параметр

Вот как выглядит макет моей таблицы:

Добавлено: 05 Май 2016, 11:54

Вообщем получилось, строка добавилась после второй строки. Но добавилась, когда я снял объединение ячеек. Вот такая команда:
	
Doc.Tables(2).Rows(2).Select();
MSWord.Application.Selection.InsertRowsBelow(1);

Но поскольку у меня некоторые ячейки объеденены, то вылазит ошибка:

{Документ.ЗаказПокупателя.Форма.ФормаДокумента.Форма(2994)}: Ошибка при вызове метода контекста (Rows): Произошла исключительная ситуация (Microsoft Word): Отсутствует доступ к отдельным строкам, поскольку таблица имеет ячейки, объединенные по вертикали

Может кто подскажет?

Последний раз редактировалось: bestname; 05 Май 2016, 11:54. Причина: Объединение сообщений


Теги:
 

Добавить поле "Свойство" в "Печать прайс-листа"

Автор useronforumРаздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 268
Последний ответ 24 Фев 2018, 14:40
от useronforum
Добавить поле "Комментарий" в "Печать прайс-листа"

Автор useronforumРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 225
Последний ответ 03 Мар 2018, 16:14
от useronforum
Как добавить столбец "Номенклатура" в таблицу "Реализация товаров и услуг"

Автор ZanderBlackРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 9
Просмотров: 10711
Последний ответ 19 Ноя 2012, 11:12
от Gunner
Не активны кнопки "Добавить" и "Удалить" дополнительные строки в отчете по НДС

Автор kiksiРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 266
Последний ответ 25 Янв 2018, 14:50
от kiksi
Документ "Поступление товаров и услуг" - как добавить графу "единица измерения"

Автор asolРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 6450
Последний ответ 29 Мар 2012, 14:40
от Essential

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
180 Сообщений
alex0402
71 Сообщений
AIFrame AIFrame
66 Сообщений
oleg-x
41 Сообщений
alexandr_ll
40 Сообщений
pavl_vs
21 Сообщений
BuhRust
20 Сообщений
KOI8-R
16 Сообщений
Sheriff
13 Сообщений
Sandi Sandi
12 Сообщений

* Кто онлайн

  • Точка Гостей: 846
  • Точка Скрытых: 0
  • Точка Пользователей: 17
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal