|
Выгрузка в ексель табличной части документов | ☑ | ||
---|---|---|---|---|
0
radonn17
20.03.12
✎
17:56
|
Здравствуйте!!Я писал уже на форуме про выгрузку, но там была другая проблема.....мне подсказали что избавиться от нее нужно циклами..всё готово, но теперь возникла другая проблема непосредственно выгрузки в ексель...надо чтобы каждый док сохранялся на вой лист...т.е. цикл по всем докам есть...а теперь надо сделать цикл чтоб для них создавались новые листы?
как есть сейчас Процедура ВыгрузитьВЭксель() ВыборкаДокументов= Документы.Журнал.Выбрать(); Пока ВыборкаДокументов.Следующий() цикл Попытка Эксель = Новый COMОбъект("Excel.Application") Исключение Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!"); Возврат; КонецПопытки; Книга = Эксель.WorkBooks.Open("C:\Users\Администратор\Downloads\1с"); //Книга = Эксель.WorkBooks.Add(); Лист = Книга.WorkSheets(1); //Лист = Книга.Sheets.Add(); //Книга = Эксель.WorkBooks.Add(); //Лист = Книга.WorkSheets(1); //Лист = Книга.Sheets.Add(); Сообщить("Док номер " + ВыборкаДокументов.Номер); НомерСтроки=0; Для каждого Строка Из ВыборкаДокументов.Ведомость Цикл НомерСтроки=НомерСтроки+1; Лист.Cells(НомерСтроки, 1).Value = Строка(Строка.Студент); Лист.Cells(НомерСтроки, 2).Value = Строка(Строка.Понедельник); Лист.Cells(НомерСтроки, 3).Value = Строка(Строка.Вторник); Лист.Cells(НомерСтроки, 4).Value = Строка(Строка.Среда); Лист.Cells(НомерСтроки, 5).Value = Строка(Строка.Четверг); Лист.Cells(НомерСтроки, 6).Value = Строка(Строка.Пятница); Лист.Cells(НомерСтроки, 7).Value = Строка(Строка.Суббота); Лист.Cells(НомерСтроки, 8).Value = Строка(Строка.Воскресенье); КонецЦикла; КонецЦикла; //Попытка //Книга.SaveAs("C:\Users\Администратор\Downloads\1с"); //Исключение //Сообщить(ОписаниеОшибки()+" Файл не сохранен!"); //Возврат; //КонецПопытки; Эксель.Application.Quit(); КонецПроцедуры |
|||
1
zak555
20.03.12
✎
17:57
|
> Я писал уже на форуме про выгрузку
блi, сохрани как эксель |
|||
2
mikecool
20.03.12
✎
17:57
|
главное не забыть - количество листов ограниченно )
|
|||
3
radonn17
20.03.12
✎
18:00
|
(1) у меня открывается книга екселя в которую записываться будет,а всё что было затирается..
(2) ну думаю мне хватит) |
|||
4
radonn17
21.03.12
✎
14:43
|
(1) чё то я действительно хрень какую-то делал...
вот подправил код &НаКлиенте Процедура СохранитьВЭксель(Команда) ВыгрузитьВЭксель(); КонецПроцедуры &НаСервере Процедура ВыгрузитьВЭксель() ВыборкаДокументов= Документы.Задание.Выбрать(); Пока ВыборкаДокументов.Следующий() цикл Попытка Эксель = Новый COMОбъект("Excel.Application") Исключение Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!"); Возврат; КонецПопытки; Книга = Эксель.WorkBooks.Add(); Лист = Книга.WorkSheets(1); НомерСтроки=НомерСтроки+1; Лист.Cells(НомерСтроки, 1).Value = Строка(Строка.Студент); Лист.Cells(НомерСтроки, 2).Value = Строка(Строка.ПН); Лист.Cells(НомерСтроки, 3).Value = Строка(Строка.ВТ); Лист.Cells(НомерСтроки, 4).Value = Строка(Строка.СР); Лист.Cells(НомерСтроки, 5).Value = Строка(Строка.ЧТ); Лист.Cells(НомерСтроки, 6).Value = Строка(Строка.ПТ); Лист.Cells(НомерСтроки, 7).Value = Строка(Строка.СБ); Лист.Cells(НомерСтроки, 8).Value = Строка(Строка.ВС); КонецЦикла; КонецЦикла; Попытка Книга.SaveAs("C:\Users\Администратор\Downloads\1с"); Исключение Сообщить(ОписаниеОшибки()+" Файл не сохранен!"); Возврат; КонецПопытки; Эксель.Application.Quit(); КонецПроцедуры но все равно проблему с отдельным листом не знаю как решить.... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |