В демо конфигурации есть пример которой загружает файл xls в форму, а можно ли пример в котором файл сразу загружается в ТаблицуЗначений ???
Йоксель » Главный форум
1c8.1 Преобразование xls в таблицу значений.
(8 posts)-
Отправлено 16 года(лет) назад #
-
В примере файл загружается в таблицу значений на форме
Отправлено 16 года(лет) назад # -
Подскажите тогда такой момент.
У меня есть обработка для загрузки из xls файла. В модуле обработки (не в модуле формы) есть функция:Функция мПрочитатьТабличныйДокументИзExcel(ПутьКФайлу,ТабличныйДокумент,ТабличнаяЧасть) Экспорт
xlLastCell = 11;
Попытка
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ПутьКФайлу);
Состояние("Обработка файла Microsoft Excel...");
ExcelЛист = Excel.Sheets(1);
Исключение
Сообщить("Ошибка. Возможно неверно указан номер листа книги Excel.");
Возврат Ложь;
КонецПопытки;
ТабличныйДокумент.Очистить();
ActiveCell = Excel.ActiveCell.SpecialCells(xlLastCell);
RowCount = ActiveCell.Row;
ColumnCount = ActiveCell.Column;
Для Column = 1 По ColumnCount Цикл
ТабличныйДокумент.Область("C"+Формат(Column,"ЧГ=")).ШиринаКолонки = ExcelЛист.Columns(Column).ColumnWidth;
КонецЦикла;
Для Row = 1 По RowCount Цикл
Для Column = 1 По ColumnCount Цикл
ТабличныйДокумент.Область("R"+Формат(Row, "ЧГ=")+"C"+Формат(Column, "ЧГ=")).Текст = ExcelЛист.Cells(Row,Column).Text;
КонецЦикла;
КонецЦикла;
Excel.WorkBooks.Close();
Excel = 0;
Возврат Истина;
КонецФункцииКак мне это можно переделать под загрузку с помощью Yoksel ???
Отправлено 15 года(лет) назад # -
Почти так же... Внимательней смотри документацию, там все есть.
ТабличныйДокумент.Очистить();
RowCount = Документ.ВысотаТаблицы();
ColumnCount = Документ.ШиринаТаблицы();
Для Column = 1 По ColumnCount Цикл
ТабличныйДокумент.Область("C"+Формат(Column,"ЧГ=")).ШиринаКолонки = Документ.Область(,Column).ШиринаСтолбца();
КонецЦикла;
Для Row = 1 По RowCount Цикл
Для Column = 1 По ColumnCount Цикл
ТабличныйДокумент.Область("R"+Формат(Row, "ЧГ=")+"C"+Формат(Column, "ЧГ=")).Текст = Документ.Область(Row,Column).Text;
КонецЦикла;
КонецЦикла;
Слегка модифицированный вьювер из демо-конфигурации.Отправлено 15 года(лет) назад # -
Спасибо за пример. Вот теперь стало хоть что-то понятно. Документацию которая YokselComServer.chm читаю, но что-то пока не въехал....
Подскажи еще один момент.
У тебя в примере на форме размещен объект AciteveX Yoksel, и из МОДУЛЯ ФОРМЫ идет вызов процедуры чтение файла *.xls.Элемент = ЭтаФорма.ЭлементыФормы.Йоксель.GetControl ();
Документ = Элемент.Документ;
Документ.Открыть (ИмяФайла, ТипФайла, 0);В моем же случае функция чтения файла находится в МОДУЛЕ ОБРАБОТКИ, т.е. напрямую к элементам формы обратиться нельзя.
Как можно поступить ?Отправлено 15 года(лет) назад # -
Вот еще один модифицированный пример из демки.
Таким путем лучше идти, листов то несколько может быть...
P.S. в первый раз написал пару строк на 8ке ;)Отправлено 15 года(лет) назад # -
Эх, вернемся к старому разговору...
Djelf, в твоем примере опять таки чтение файл xls идет посредством объект размещенного на форме.
Йоксель = Новый ComObject ("Йоксель");
гКнига = Йоксель.ОткрытьКнигуExcel (ФайлКнигиExcel);ЭтаФорма.ЭлементыФормы.Листы.РаспределятьПоСтраницам = Ложь;
Страницы = ЭтаФорма.ЭлементыФормы.Листы.Страницы;А мне нужен пример чтобы можно было открыть xls файл и загрузить его ТЗ, в обработке в которой нет форм...
Отправлено 14 года(лет) назад # -
Стоп. Кажется начинаю понимать что к чему...
Отправлено 14 года(лет) назад #
Отправить сообщение
Вы должны войти в систему, чтобы оставлять сообщения.