Имя: Пароль:
1C
1С v8
Выгрузка из 1С в Эксель, как установить формат выгружаемого поля ?
0 El_Duke
 
гуру
13.10.14
16:27
Добрый день !
Выгружаю сведения из дока Зарплата к выплате организации в Эксель.Вот кусок кода:

Для Каждого ТекСтрокаСостав Из ЗарплатныйДокумент.Зарплата Цикл
        
НачСтр = НачСтр + 1;
Кол = Кол + 1;
        
Лист.Cells(НачСтр,1).Value = Кол;
Лист.Cells(НачСтр,2).Value = ФИО(ТекСтрокаСостав.ФизЛицо,1);
Лист.Cells(НачСтр,3).Value = ФИО(ТекСтрокаСостав.ФизЛицо,2);
Лист.Cells(НачСтр,4).Value = ФИО(ТекСтрокаСостав.ФизЛицо,3);
Лист.Cells(НачСтр,5).Value = ПолучитьСчет(ТекСтрокаСостав.Физлицо);
Лист.Cells(НачСтр,6).Value = Формат(Число(ТекСтрокаСостав.Сумма),"ЧДЦ=2");
Лист.Cells(НачСтр,7).Value = Вал;
        
Сум = Сум + Число(ТекСтрокаСостав.Сумма);
                
КонецЦикла;

Все чудесно, вот только колонка 5 выгружается в числовом виде: вместо номера лицевого счета из 20 знаков выгружается число вида 4.08Е+19
Как установить этой ячейке текстовый формат при выгрузке ?
Подскажите, сам в программировании не силен.
1 pessok
 
13.10.14
16:30
а не православнее ли сделать обычный табличный документ, отформатировать как надо, а потом сохранить в формате экселя?
2 Armando
 
13.10.14
16:30
NumberFormat = "@"
3 Armando
 
13.10.14
16:31
Лист.Cells(НачСтр,5).NumberFormat = "@"
4 Maxus43
 
13.10.14
16:32
ЛистНовый.Cells(НомерСтроки, 6).NumberFormat = "@";//текст
            ЛистНовый.Cells(НомерСтроки, 6).Value =  "0000001";
5 Fish
 
13.10.14
16:33
(1) При таком подходе форматирование не всегда корректно сохраняется.
6 pessok
 
13.10.14
16:35
(5) это если в "старые" версии экселя сохранять. с 2007 не сталкивался. Делал огромную простынку, которую инокомпания грузит в свою erp из зупа. И таки да, если сохранять в старые варинаты экселя, то беда имеет место быть, а вот с 2007 нормально
7 El_Duke
 
гуру
13.10.14
16:46
Получилось, спасибо всем !