Имя: Пароль:
1C
 
считывание табличного документа
0 lamme
 
11.04.22
16:07
Есть ексель файл. я его считываю

ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ИмятМП, СпособЧтенияЗначенийТабличногоДокумента.Значение);

и потом непосредтсвенное считывание табок:


Функция ТабличныйДокументВТаблицуЗначений_вариант2(ТабДок,ПозицияПерваяСтрокаСДанными)

ТаблицаДанныеДокумента = Новый ТаблицаЗначений();


Для СчетчикКолонок = ПозицияПерваяСтрокаСДанными По ТабДок.ШиринаТаблицы Цикл

ИмяКолонки = "_" + СчетчикКолонок;
ТаблицаДанныеДокумента.Колонки.Добавить(ИмяКолонки);

Для СчетчикСтрок = 1 По ТабДок.ВысотаТаблицы Цикл

ИндексСтроки = СчетчикСтрок - 1;

Если СчетчикКолонок = 1 Тогда
СтрокаТаблицы = ТаблицаДанныеДокумента.Добавить();
Иначе
СтрокаТаблицы = ТаблицаДанныеДокумента[ИндексСтроки];
КонецЕсли;

ТекущаяЯчейка = ТабДок.Область(СчетчикСтрок, СчетчикКолонок);
ЗначениеЯчейки = ТекущаяЯчейка.Текст;

СтрокаТаблицы[ИмяКолонки] = ЗначениеЯчейки;

КонецЦикла
КонецЦикла;
Возврат ТаблицаДанныеДокумента;

КонецФункции


По итогу получаем ТЗ.
но!
если в исходном экселе идет число с 3 знаками после зпт
например
0,003
-то такое значение обрезается до 2х знаков после зпт , те в итоге имеем 0

как и где задать параметр ячейки таб длок при считывании ?
1 lamme
 
11.04.22
16:08
или не так ..

в чем разница будет между этими параметрами ячейки

https://skr.sh/sDPd4C7NKXj
?
2 Ёпрст
 
гуру
11.04.22
19:26
(1) в значении ячейки может быть значение, в тексте - выводимый текст, на который можно еще и формат положить..
и при выгрузки в эксель будет тоже самое..там тоже есть значение и текст
3 Ёпрст
 
гуру
11.04.22
19:28
https://question-it.com/questions/4659123/v-chem-raznitsa-mezhdu-text-value-i-value2

ну и в 1с-ине пошли примерно тем же путеём, там еще и расшифровку тока добавили до кучи
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший