helpf.pro
Регистрация
 +1 
Распечатать

Как из 1С написать формулу в Excel

Объяснить мне сразу трудно - поэтому давайте "на пальцах"
Свежий простой пример :
вопрос " Ексель.Cells(1,3).Formula= "=СЦЕПИТЬ(E1;C7)";" "

первое на что хочу обратить внимание
те функции которые Вы видите визуально в ячейке MS EXCEL для 1С "слегка не знакомы", ей лучше озвучить имя функции на VBA

откуда Вы знаете как это функция на VBA называется ???

я Вам расскажу, немного терпения:
1. открываем новую книгу MS EXCEL
2. идем в меню Сервис - Макрос - Начать запись - Ок (появится маленькое окошко с квадратной кнопкой - его не кое случае не закрывать)
3. кликаем ячейку "С1" и пишем в ней формулу =СЦЕПИТЬ(E1;C7)
4. после этого нажимаем на квадратную кнопочку (Мы только что с Вами записали макрос на языке VBA)
5.посмотрим что получилось
идем в меню Сервис - Макрос - Макросы - (там будет в новой книге по умолчанию Макрос1) - выбираем его и нажимаем кнопку "Войти"

Поздравляю - мы попали во встроенный редактор VBA (аналог конфигурартора 1С)

и что мы видим

Код
Sub Макрос1()

Range("C1").S_elect
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[2],R[6]C)"
Range("C2").S_elect

End Sub


теоритически нам нужно только

Код
Range("C1").FormulaR1C1 = "=CONCATENATE(RC[2],R[6]C)"


это и будет для 1С =

Код 1C v 7.x
 Cells(1,3).Formula= "=СЦЕПИТЬ(E1;C7)";" "


Проверим, напишем код на любимом 1С:

Код 1C v 7.x
 Процедура Сформировать()
Перем Кат,Шаб;

Ехсел=СоздатьОбъект("Excel.Application");
Книга=Ехсел.Workbooks;
Если ФС.ВыбратьФайл(0,Кат,Шаб,"Выбери файл Еxcel",,"*.xls",)=1 Тогда
Книга.Open(Шаб+Кат);
Ехсел.Range("C1").FormulaR1C1 = "=CONCATENATE(RC[2],R[6]C)";
Книга.Close();
Ехсел="";
КонецЕсли;
КонецПроцедуры

все работает.

немного подумав, Вы поймете, что
Код 1C v 7.x
 Ехсел.Range("C1").FormulaR1C1 = "=CONCATENATE(RC[2],R[6]C)";

можно заменить на
Код 1C v 7.x
 Ехсел.Cells(1, 3).FormulaR1C1 = "=CONCATENATE(RC[2],R[6]C)";

и результат не изменится, а возможностей прибавится.
В MS EXCEL только амлет нельзя пожарить - возможности его одурманивают.

Tatitutu
Разместил:   Версии: | 7.x |  Дата:   Прочитано: 25628
 +1 
Распечатать
Возможно, вас также заинтересует
Excel файл как Внешний источник данных 17
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . https://helpf.pro/uploads/img
Активация открытой книги Excel для корректировки 0
Нужно было получить для изменения уже открытую книгу Excel, а если она закрыта, то открыть и изменять. Ниже код, который данную задачу решает. Попытка Эксель = Неопределено; Книга = Неопределено; Лист = Неопределено; Состояние(" Выполняется
Быстрая выгрузка отчетов в Excel, наложение Фильта и отображение ярлыка 0
Вместо Таб.Показать() используем глобальную функцию - и отчет показывается сразу в Excel в удобоваримом виде - с форматированием колонок по ширине, автофильтром и ярлычками листов Процедура глОткрытьВЭкселе(Таб,ИмяФайла=" " ,НеИзменятьВысотуСтроки=0
Быстрая загрузка данных большого размера файла Excel в многомерный Массив 0
// OldthiefXXX Перем СерверExcel; Процедура КнопкаВыполнитьНажатие(Кнопка) ФайлХЛС=СерверExcel.Application.Workbooks.Open(ДокументХЛС); КонечнаяСтрокаДанных=ФайлХЛС.ActiveSheet.UsedRange.Rows.Count; КоличествоКолонокДанных=ФайлХЛС.ActiveSheet
Быстрая функция чтения данных с листа Excel 11
При чтении файла Excel я использую вариантный массив. Он позволяет быстро получить ВСЮ таблицу листа в память, а также получать данные массива целыми колонками. Тем самым время на чтение области файла Excel в таблицу значений сокращается в десятки ра
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.