8.х Задание параметров файла Экселя.

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем barsuchechechek, 2 дек 2010.

  1. TopicStarter Overlay
    barsuchechechek
    Offline

    barsuchechechek Опытный в 1С

    Регистрация:
    21 фев 2009
    Сообщения:
    265
    Симпатии:
    0
    Баллы:
    26
    Подскажите можно ли сохраняя печатную форму в экселе таким образом ТабДок.Записать(ФайлВФорматеXLS, ТипФайлаТабличногоДокумента.XLS);
    как-то задать формулу в данном файле.
    Смысл - формирую файл в нем количество и цена в столбцах, надо чтобы при открытии пользователем этого экселевского файла в столбце уже стояла формула = количество*цена, т.е. столбец 3 например был равен столбец 1 * столбец 2.
    И еще - можно ли закрыть для редактирования остальные столбцы? т.е. к примеру чтобы пользователь мог редактировать только один в файле, а остальные нет?
    Пришел к выводу что сохраняю файл а затем его редактирую ужет открыв через АДО например. Можно пример как программно из 1с задать формулу в файле экселя?
  2. UnNone
    Offline

    UnNone Опытный в 1С

    Регистрация:
    21 мар 2007
    Сообщения:
    148
    Симпатии:
    0
    Баллы:
    26
    http://www.1c-pro.ru/index.php?showtopic=27513&hl=
  3. has
    Offline

    has Опытный в 1С

    Регистрация:
    18 июн 2009
    Сообщения:
    708
    Симпатии:
    0
    Баллы:
    26
    Можно, создайте макрос в экселе и посмотрите код. Потом его написать на 1С.
  4. TopicStarter Overlay
    barsuchechechek
    Offline

    barsuchechechek Опытный в 1С

    Регистрация:
    21 фев 2009
    Сообщения:
    265
    Симпатии:
    0
    Баллы:
    26
    Делаю так:
    Код:
    ОбъектExcel=Новый COMОбъект("Excel.Application");
    Попытка
    ФайлExcel = ОбъектExcel.Workbooks.Open(ИмяФайла);	
    Исключение
    Предупреждение("Невозможно открыть указанный файл! Возможно, он уже открыт!");
    Возврат;
    КонецПопытки;
    Ячейка=ОбъектExcel.Cells(НомерСтроки,НомерСтолбца);
    Ячейка.HasFormula = Истина;
    Ячейка.FormulaHidden = Истина;
    Ячейка.Formula = Формула;
    
    
    Пишет ошибку - HasFormula - свойство не доступно для записи. Что не так?
  5. has
    Offline

    has Опытный в 1С

    Регистрация:
    18 июн 2009
    Сообщения:
    708
    Симпатии:
    0
    Баллы:
    26
    Скорей всего это метод который возвращает Истина, если ячейка содержит формулу, поэтому доступен только для чтения. Кстати FormulaHidden также не доступно для записи, так что вам просто нада
    Код:
    ОбъектExcel=Новый COMОбъект("Excel.Application");
    Попытка
    ФайлExcel = ОбъектExcel.Workbooks.Open(ИмяФайла);	
    Исключение
    Предупреждение("Невозможно открыть указанный файл! Возможно, он уже открыт!");
    Возврат;
    КонецПопытки;
    Ячейка=ОбъектExcel.Cells(НомерСтроки,НомерСтолбца);
    Ячейка.Formula = Формула;
    
    

Поделиться этой страницей