Доброго времени суток, коллеги. Подскажите , пожалуйста, где можно найти свежую информацию по загрузке данных из файлов формата excel в управляемом приложении. Конкретно интересует ,как получить заполненные ячейки. Нашел на другом форуме такую конструкцию: АктивныеСтроки = Книга.ActiveSheet.UsedRange;
, но не работает . Собственно ,дойдя до нее и вылезает ошибка. Заранее благодарен.
, но не работает . Собственно ,дойдя до нее и вылезает ошибка. Заранее благодарен.
&НаКлиенте
Процедура ПолучитьДанные(Команда)
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Диалог.Заголовок = "Выберите файл:";
Диалог.ПолноеИмяФайла = "";
Диалог.ПредварительныйПросмотр = Истина;
Диалог.Фильтр = ("*.xls;*");
Если Диалог.Выбрать() Тогда
Файл = Диалог.ПолноеИмяФайла;
Иначе
Отказ = Истина;
Возврат;
КонецЕсли;
Попытка
Excel = Новый COMОбъект("","Excel.Application");
Книга = Excel.Workbooks.Open(Файл);
Исключение
Сообщить("Не удалось открыть Файл по причине:"+ Файл + ОписаниеОшибки());
КонецПопытки;
АктивныеСтроки = Книга.ActiveSheet.UsedRange;
ЧислоКолонок = RangeAll.Columns.Count;
ЧислоСтрок = RangeAll.Rows.Count;
ПолучитьДанныеНаСервере(ЧислоСтрок,RangeAll);
КонецПроцедуры
ПоказатьПо теме из базы знаний
- Загрузка данных из табличного документа в справочники, документы, планы видов характеристик, планы видов расчетов, планы счетов, бизнес-процессы, задачи, в движения документов, поточная загрузка документов (EXCEL, управляемые формы, универсальная)
- Загрузка документа "Заказ на перемещение" из Excel (управляемые формы)
- Загрузка данных из Excel (управляемые формы) с возможностью создания групп и контроля загрузки количества строк
- Шаблон Загрузка / выгрузка Excel, управляемые формы (для файловой системы и клиент-сервера)
- Загрузка из Excel с выбором листа на управляемых формах
Найденные решения
(1)
На клиенте читаете файл в двоичные данные. Отправляете двоичные данные на сервер и записываете их во временный файл. Используйте метод Прочитать табличного документа, чтобы загрузить данные из временного файла.
COMОбъект
Не изобретайте велосипед, загрузка эксель-файла в 1С доступна средствами платформы:
На клиенте читаете файл в двоичные данные. Отправляете двоичные данные на сервер и записываете их во временный файл. Используйте метод Прочитать табличного документа, чтобы загрузить данные из временного файла.
Только-что отвечал =)) Здесь было или нет не помню
ДвоичныеДанные = ПолучитьИЗВременногоХранилища(АдресВременногоХранилища); // ДвоичныеДанные
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xlsx");
ДвоичныеДанные.Записать(ИмяВременногоФайла);
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.Прочитать(ИмяВременногоФайла);
ПЗ = Новый ПостроительЗапроса;
ПЗ.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабДокумент.Область());
ПЗ.ДобавлениеПредставлений = ТипДобавленияПредставлений.НеДобавлять;
ПЗ.ЗаполнитьНастройки();
ПЗ.Выполнить();
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
На клиенте читаете файл в двоичные данные. Отправляете двоичные данные на сервер и записываете их во временный файл. Используйте метод Прочитать табличного документа, чтобы загрузить данные из временного файла.
COMОбъект
Не изобретайте велосипед, загрузка эксель-файла в 1С доступна средствами платформы:
На клиенте читаете файл в двоичные данные. Отправляете двоичные данные на сервер и записываете их во временный файл. Используйте метод Прочитать табличного документа, чтобы загрузить данные из временного файла.
Только-что отвечал =)) Здесь было или нет не помню
ДвоичныеДанные = ПолучитьИЗВременногоХранилища(АдресВременногоХранилища); // ДвоичныеДанные
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xlsx");
ДвоичныеДанные.Записать(ИмяВременногоФайла);
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.Прочитать(ИмяВременногоФайла);
ПЗ = Новый ПостроительЗапроса;
ПЗ.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабДокумент.Область());
ПЗ.ДобавлениеПредставлений = ТипДобавленияПредставлений.НеДобавлять;
ПЗ.ЗаполнитьНастройки();
ПЗ.Выполнить();
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот