Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Ошибка при загрузке области эксель из 1с 7.7

v7: Ошибка при загрузке области эксель из 1с 7.7
Я
   barsik123
 
17.09.18 - 12:52
Для ускорения загрузки из эксель решил воспользоваться методом выбора области ячеек экселя для дальнейшей обработки в 1с. делаю так:
Excel    = СоздатьОбъект("Excel.Application");     
    Книга    = Excel.Application.Workbooks.Open(ВыбИмяФайла); 
    ЛистЭксель     = Книга.WorkSheets(1);
    Строк = Excel.Cells(1,1).SpecialCells(11).Row;
    ВсегоКолонок=9;
    НомерПервойСтроки=3; 
    НомерПервойКолонки=1;
    
    Область = ЛистЭксель.Range(ЛистЭксель.Cells(НомерПервойСтроки,НомерПервойКолонки), ЛистЭксель.Cells(Строк,ВсегоКолонок)); 
    Данные = Область.Value;
При выполнении: Область.Value, выдается ошибка "тип переменной не поддерживается". Пробовал на разных машинах под 2013, 2010 офисом. 
Что не так?
 
 
   Salimbek
 
1 - 17.09.18 - 13:06
(0) И что должно, теоретически, получиться после Данные = Область.Value;
   barsik123
 
2 - 17.09.18 - 13:17
(1) я делаю по аналогии, как для 1с 8: вот пример:
https://helpf.pro/faq/view/1013.html
Хочу получить таблицу значений и ее обрабатывать.
   Cool_Profi
 
3 - 17.09.18 - 13:18
(2) А ты не пробовал СКД в 77 использовать, по аналогии, как в 8,* ?
   barsik123
 
4 - 17.09.18 - 13:21
(3)неуместное сравнение.
   Злопчинский
 
5 - 17.09.18 - 13:27
Вэлью из области - это сильно!
   Salimbek
 
6 - 17.09.18 - 13:30
(2) Если делаешь "по аналогии", то почему код переписываешь с ошибками?
Данные = Область.Value.Выгрузить();
   Злопчинский
 
7 - 17.09.18 - 13:32
(6) от бездуховности, стопудово!
   barsik123
 
8 - 17.09.18 - 13:34
(6)Логично, если Область.Value не работает,то и Область.Value.Выгрузить() работать не будет.
Естественно в начале пробовал именно так.
   Salimbek
 
9 - 17.09.18 - 15:22
(8) Вовсе это не "логично". А если по теме, то во времена 7.7 никто не думал о типах вроде ComSafeArray и тому подобных, и потому перебор этой хрени никто не делал. А вот в 8.х уже сделали. Именно на это тебе тонко намекали в (3).
Отдельно замечу, что Тип у Область.Value может вполне себе отличаться от Область.Value.Выгрузить() и потому одно может работать, а другое нет.
Решить вопрос можно: 1) не работая с областями, а перебирая все поэлементно; 2) Используя Йоксель вытащить данные из файла; 3) Или используя DynaWrap победить неизвестные для 7.7 типы Область.Value, но там дальше разбираться надо, как в ТЗ вытащить, т.к. хоть и будет возможность работать с такими значениями, но метода Выгрузить() там опять же может не быть.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует