|
Копирование листа Excel в новый документ Excel | ☑ | ||
---|---|---|---|---|
0
Alesha
29.08.17
✎
14:37
|
Задача: имеется шаблон файла Иксель, сделать новую книгу и скопировать лист из шаблона в новую книгу.
Данный код позволяет скопировать данные, но размеры ячеек не сохраняются. Нужно что бы копировалось, как в шаблоне, включая формулы. Что можно изменить? Попытка Excel = Новый COMОбъект("Excel.Application"); Исключение Сообщить("Не удалось инициализировать Excel"); Возврат; КонецПопытки; Попытка // Открыть книгу, содержащую шаблон оформления. Шаблон = Excel.Workbooks.Open("d:\Files\Шаблоны отчетов\Шаблон Software development report in portfolio.xlsx"); ЛистШаблона = Шаблон.WorkSheets("Шаблон Портфеля"); НоваяКнига = Excel.Workbooks.Add(); // добавить в книгу новый лист: ЛистНовый = НоваяКнига.Sheets.Add(); ЛистНовый.Name = "Проект 1"; // Копировать область из книги-шаблона в новую книгу. ЛистШаблона.Range("A1:Y87").Copy(ЛистНовый.Range("A1:Y87")); // работает, но не сохраняется размер ячеек //ЛистШаблона.Copy(ЛистНовый);- не работает выдает ошибку //Произошла исключительная ситуация (Microsoft Excel): Не удается вставить листы в конечную книгу, так как она содержит меньшее число строк и столбцов, чем исходная книга. Чтобы переместить или скопировать данные в конечную книгу, следует выделить их, а затем с помощью команд копирования и вставки вставить их на листы другой книги. //Шаблон.Close(0); Excel.Visible = Истина; Исключение Сообщить(ОписаниеОшибки()); Excel.Quit(); КонецПопытки; |
|||
1
Fish
29.08.17
✎
14:44
|
(0) Копируй файл шаблона полностью, потом уже заполняй новый файл.
|
|||
2
пипец
29.08.17
✎
14:44
|
а просто копировать файл и его открывать не ?
|
|||
3
Timon1405
29.08.17
✎
14:45
|
погуглить "copy excel sheet with column widths vba" не предлагать?
|
|||
4
Alesha
29.08.17
✎
14:53
|
в новом файле будет много листов, каждый подобно листу из шаблона, поэтому нужно полностью скопировать.
|
|||
5
НЕА123
29.08.17
✎
14:58
|
||||
6
Alesha
29.08.17
✎
15:03
|
ЛистШаблона.Copy(ЛистНовый);//- не работает выдает ошибку
//Произошла исключительная ситуация (Microsoft Excel): Не удается вставить листы в конечную книгу, так как она содержит меньшее число строк и столбцов, чем исходная книга. Чтобы переместить или скопировать данные в конечную книгу, следует выделить их, а затем с помощью команд копирования и вставки вставить их на листы другой книги. |
|||
7
Victor111
29.08.17
✎
15:49
|
(6) запиши макрос (копирования из настройками и форматированием), потом посмотри код, и будет понятно что не так в коде в 1с
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |