Добрый день!
Требуется загрузить номера серий из файла Excel в 1С.
Подскажите, что можно сделать с файлом Excel,
Сейчас в нём номера серии представлены так
value = "409101037024", а в text = "0409101037024"
База серверная, Excel читаю через ПостроительЗапроса
ПЗ = Новый ПостроительЗапроса;
При считывании в 1С берется значение value = "409101037024" и 0 мы теряем.
С помощью макроса добавила апостроф ' в начале номеров серий в Excel и тоже потеряла лидирующие 0 в начале. Перебивать руками не вариант, около 100.000 строк.
Нюансы:
1. Лидирующие 0 могут быть, могут не быть. МОжет быть 0, а может 00000
2. Длина номера серии переменная, иногда с буквами
Вопрос: что можно сделать с Excel, чтобы в колонке с номером серий было value = "0409101037024", то есть с лидирующим нулем?
Пример файла приложила.
ПС: если читать Excel в файловом варианте базы через
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ИмяФайла);
то есть возможность получить правильные значения через
(Excel.Cells(Сч, 1).Text)
Но это очень неудобно и медленно.
Требуется загрузить номера серий из файла Excel в 1С.
Подскажите, что можно сделать с файлом Excel,
Сейчас в нём номера серии представлены так
value = "409101037024", а в text = "0409101037024"
База серверная, Excel читаю через ПостроительЗапроса
ПЗ = Новый ПостроительЗапроса;
При считывании в 1С берется значение value = "409101037024" и 0 мы теряем.
С помощью макроса добавила апостроф ' в начале номеров серий в Excel и тоже потеряла лидирующие 0 в начале. Перебивать руками не вариант, около 100.000 строк.
Нюансы:
1. Лидирующие 0 могут быть, могут не быть. МОжет быть 0, а может 00000
2. Длина номера серии переменная, иногда с буквами
Вопрос: что можно сделать с Excel, чтобы в колонке с номером серий было value = "0409101037024", то есть с лидирующим нулем?
Пример файла приложила.
ПС: если читать Excel в файловом варианте базы через
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ИмяФайла);
то есть возможность получить правильные значения через
(Excel.Cells(Сч, 1).Text)
Но это очень неудобно и медленно.
Прикрепленные файлы:
По теме из базы знаний
- Загрузка из EXCEL в 1С. com.sun.star.ServiceManager (LibreOffice/OpenOffice)
- Загрузка из EXCEL в 1С на платформе 8.3.6/8.3.7/8.3.8/8.3.9/8.3.10 (с картинками)
- Загрузка разовых начислений из Excel, ЗУП 2.5
- Загрузка индивидуальных графиков работы из шаблона Excel для ЗУП 3.1
- Почему не получается использовать ТабличныйДокумент для работы с Excel?
Найденные решения
(3) А так читать не пробовали:
Тип: СпособЧтенияЗначенийТабличногоДокумента.
Определяет, каким образом нужно интерпретировать значения, считываемые из исходного документа XLS, XLSX или ODS.
Во втором параметре как раз Текст и Значение выбирается.
ТабДок = Новый ТабличныйДокумент;
Попытка
ТабДок.Прочитать(Файл, СпособЧтенияЗначенийТабличногоДокумента.Значение);
Исключение
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = ОписаниеОшибки();
Сообщение.Сообщить();
Возврат Неопределено;
КонецПопытки;
ПоказатьТип: СпособЧтенияЗначенийТабличногоДокумента.
Определяет, каким образом нужно интерпретировать значения, считываемые из исходного документа XLS, XLSX или ODS.
Во втором параметре как раз Текст и Значение выбирается.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) База серверная, Excel читаю через ПостроительЗапроса
Там нет возможности обратиться к значению ячейки.
То есть не имею возможности прочитать Excel как COM объект
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ИмяФайла);
и получить правильные значения через
(Excel.Cells(Сч, 1).Text)
Это доступно только в файловом варианте базы
Там нет возможности обратиться к значению ячейки.
То есть не имею возможности прочитать Excel как COM объект
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ИмяФайла);
и получить правильные значения через
(Excel.Cells(Сч, 1).Text)
Это доступно только в файловом варианте базы
(3) А так читать не пробовали:
Тип: СпособЧтенияЗначенийТабличногоДокумента.
Определяет, каким образом нужно интерпретировать значения, считываемые из исходного документа XLS, XLSX или ODS.
Во втором параметре как раз Текст и Значение выбирается.
ТабДок = Новый ТабличныйДокумент;
Попытка
ТабДок.Прочитать(Файл, СпособЧтенияЗначенийТабличногоДокумента.Значение);
Исключение
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = ОписаниеОшибки();
Сообщение.Сообщить();
Возврат Неопределено;
КонецПопытки;
ПоказатьТип: СпособЧтенияЗначенийТабличногоДокумента.
Определяет, каким образом нужно интерпретировать значения, считываемые из исходного документа XLS, XLSX или ODS.
Во втором параметре как раз Текст и Значение выбирается.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот