Имя: Пароль:
1C
1С v8
обработка Excel
0 tigrandis
 
15.12.11
12:39
привет всем, скиньте пожалуйста обработку, которая загружает данные из ExcelЯ, за раннее спасибо ))
1 tigrandis
 
15.12.11
12:42
(((
2 BuHu
 
15.12.11
12:43
)))
3 Shrek_yar
 
15.12.11
12:43
куда кидат то?
4 Eugene_life
 
15.12.11
12:45
(3) кидай вверх и отбегай
5 Wobland
 
15.12.11
12:45
(0) спасибов не надо
Процедура КнопкаВыполнитьНажатие(Кнопка)
   Попытка
       Состояние("Загрузка Excel...");
       Excel=Новый COMОбъект("Excel.Application");
   Исключение
       Сообщить(ОписаниеОшибки());
       Возврат;
   КонецПопытки;
   Состояние("Открытие файла...");
   ExcelFile=Excel.Workbooks.Open(Файл);
   Состояние("Обработка файла...");
   Sheet=ExcelFile.Sheets(1);
   ПоследняяСтрока=Sheet.Cells.SpecialCells(11).Row;
   ЭлементыФормы.Индикатор.Значение=0;
   ЭлементыФормы.Индикатор.МаксимальноеЗначение=ПоследняяСтрока-8;
   Для стр=8 По ПоследняяСтрока Цикл
       ОбработкаПрерыванияПользователя();
       ЭлементыФормы.Индикатор.Значение=ЭлементыФормы.Индикатор.Значение+1;
       Артикул=СокрЛП(Sheet.Cells(стр, 1).Value);
   КонецЦикла;
   Excel.Quit();
КонецПроцедуры
6 tigrandis
 
15.12.11
12:45
на мыло tigrandis07@gmail.com   или можно в асю  610366
7 vicof
 
15.12.11
12:47
(6) а в профиле другая ася    2252557.
8 tigrandis
 
15.12.11
12:48
ну можно и туда, это оба мои номера )))
9 tigrandis
 
15.12.11
12:51
номер уточнили а кинуть передумали чтоли )) хаха
10 vicof
 
15.12.11
12:51
(9) тебе уж кинули в (5)
11 Fish
 
гуру
15.12.11
12:52
(9) В (5) все что тебе надо для начала :))
12 Wobland
 
15.12.11
12:52
(9) скопипастить тебе (5) в оба номера или сам?
13 zladenuw
 
15.12.11
12:53
Процедура Загрузить() Экспорт
       ExcelФайл = ПолучитьCOMОбъект(мВыбФайл);
       Состояние("Обработка файла Microsoft Excel...");
       // Читаем данные первого листа книги
       Попытка
           ExcelЛист = ExcelФайл.Sheets(1);        
       Исключение
           Предупреждение("Файл открыт, закройте его!!!",,"ОШИБКА");
           Возврат;
       КонецПопытки;
       //
       RowCount     = 6500;
       ВсегоКолонок = 3;
       НомерПервойКолонки = 1;
       //
       СоздатьТЧДанных();
       //Обратаем всю область данных
           Область = ExcelЛист.Range(ExcelЛист.Cells(1,НомерПервойКолонки), ExcelЛист.Cells(RowCount,ВсегоКолонок));
           Данные = Область.Value.Выгрузить();        
       //Создание пустых строк по RowCount    
       Для Счетчик = 1 По RowCount Цикл
           НоваяСтрока = ТЧДанных.Добавить();
       КонецЦикла;
       
       //Заполнение Тч данными
       Для Счетчик = 0 По ВсегоКолонок-1 Цикл
           ТЧДанных.ЗагрузитьКолонку(Данные[Счетчик], "Колонка"+Счетчик);
       КонецЦикла;
       Создать();
       ExcelФайл.Close();
КонецПроцедуры

//------------------------------
Процедура СоздатьТЧДанных()
   
   // Создание описателя типов для таблицы значений
   //КЧ = Новый КвалификаторыЧисла(15,2);
   КС = Новый КвалификаторыСтроки(50);
   Массив = Новый Массив;
   Массив.Добавить(Тип("Строка"));
   ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
   //Массив.Очистить();
//Массив.Добавить(Тип("Число"));
   //ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ);
   
   // Очистить предыдущие значения
   ТЧДанных.Очистить();
   ТЧДанных.Колонки.Очистить();
   
   // Создать колонки табличного документа
   ТЧДанных.Колонки.Добавить("Колонка0",ОписаниеТиповС,"Х");
   ТЧДанных.Колонки.Добавить("Колонка1",ОписаниеТиповС,"ХХ");    
   ТЧДанных.Колонки.Добавить("Колонка2",ОписаниеТиповС,"ХХX");
   //ТЧДанных.Колонки.Добавить("Колонка3",ОписаниеТиповС,"ХXXX");
   //ТЧДанных.Колонки.Добавить("Колонка4",ОписаниеТиповС,"Норматив");
   //ТЧДанных.Колонки.Добавить("Колонка5",ОписаниеТиповС,"Х");
   //ТЧДанных.Колонки.Добавить("Колонка6",ОписаниеТиповС,"Кво");
       
КонецПроцедуры

Можно еще так......
а вообще погуглить. есть много сайтов где описано.... лентяи.
14 Shrek_yar
 
15.12.11
12:53
(9) уже кинули, скопируй
15 tigrandis
 
15.12.11
12:54
спасибо
16 Wobland
 
15.12.11
12:54
а ЗагрузкаДанныхИзТабличногоДокумента.epf умеет с екселем бороться?
17 zladenuw
 
15.12.11
12:57
(16)да. может у него нету ее просто. :).
Поиск рулит.
18 ЧеловекДуши
 
15.12.11
12:59
Ты случаем не про уникальную обработку по загрузки данных из екселя?
19 ЧеловекДуши
 
15.12.11
12:59
уникальную  - > универсальную.
20 zladenuw
 
15.12.11
13:00
она самая
21 tigrandis
 
15.12.11
13:01
да да, так точнее будет