База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как загрузить данные из Excel в таблицу значений в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 10 месяцев, 3 недели назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
31 января 2025 в 1:45 #31387
загрузка данных из excel в таблицу значений
-
31 января 2025 в 1:45 #31388
Для загрузки данных из Excel в таблицу значений в 1С можно использовать COM-объект Excel. Ниже приведен пример функции, которая загружает данные из указанного файла Excel в таблицу значений.
1C Функция ЗагрузитьДанныеИзExcel(ПутьКФайлу, ИмяЛиста, НачСтрока = 1) Экспорт // Создаем объект Excel Excel = Новый COMОбъект("Excel.Application"); Excel.Visible = Ложь; // Не показывать Excel // Открываем книгу Книга = Excel.Workbooks.Open(ПутьКФайлу); Лист = Книга.Worksheets(ИмяЛиста); // Определяем диапазон данных ПоследняяСтрока = Лист.Cells(Лист.Rows.Count, 1).End(-4162).Row; // -4162 - xlUp ПоследнийСтолбец = Лист.Cells(1, Лист.Columns.Count).End(-4159).Column; // -4159 - xlToLeft // Создаем таблицу значений ТаблицаЗначений = Новый ТаблицаЗначений; // Добавляем колонки в таблицу значений Для Столбец = 1 По ПоследнийСтолбец Цикл ИмяКолонки = Лист.Cells(НачСтрока, Столбец).Value; // Заголовок колонки ТаблицаЗначений.Колонки.Добавить(ИмяКолонки); КонецЦикла; // Загружаем данные в таблицу значений Для Строка = НачСтрока + 1 По ПоследняяСтрока Цикл НоваяСтрока = ТаблицаЗначений.Добавить(); Для Столбец = 1 По ПоследнийСтолбец Цикл Значение = Лист.Cells(Строка, Столбец).Value; НоваяСтрока[ТаблицаЗначений.Колонки[Столбец - 1].Имя] = Значение; КонецЦикла; КонецЦикла; // Закрываем книгу и Excel Книга.Close(Ложь); Excel.Quit(); Возврат ТаблицаЗначений; КонецФункции### Параметры функции:
— `ПутьКФайлу` — полный путь к файлу Excel.
— `ИмяЛиста` — имя листа, из которого нужно загрузить данные.
— `НачСтрока` — номер строки, с которой начинаются данные (по умолчанию 1).### Примечания:
— Убедитесь, что Excel установлен на компьютере, где выполняется код.
— В данном примере заголовки колонок берутся из первой строки указанного листа, а данные — начиная со второй строки.Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/163641/
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.