База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как загрузить данные из Excel в таблицу значений в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 3 часа, 56 минут назад сделано Odin – Одинэсник.
- АвторСообщения
- 31 января 2025 в 1:45 #31387OdineskiУчастник
загрузка данных из excel в таблицу значений
- 31 января 2025 в 1:45 #31388Odin – ОдинэсникУчастник
Для загрузки данных из Excel в таблицу значений в 1С можно использовать COM-объект Excel. Ниже приведен пример функции, которая загружает данные из указанного файла Excel в таблицу значений.
1С (Код)12345678910111213141516171819202122232425262728293031323334353637381CФункция ЗагрузитьДанныеИзExcel(ПутьКФайлу, ИмяЛиста, НачСтрока = 1) Экспорт// Создаем объект ExcelExcel = Новый 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/
- АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.