|
Опять этот Excel | ☑ | ||
---|---|---|---|---|
0
1CLama
11.01.12
✎
17:41
|
Добрый день!
Мне необходимо из 3-х таблиц Excel сделать одну, но при этом не потерять группировки. Вот этот способ http://www.1c-pro.ru/index.php?showtopic=24688&st=0&gopid=187902&#entry187902 интересный, но группировки теряются. Может есть какая-то возможность получить результат с помощью Excel? Или как-то по-другому - в Excel они превратились из Табличного Документа. |
|||
1
1CLama
11.01.12
✎
18:26
|
up
|
|||
2
petrowsky
11.01.12
✎
20:49
|
(0) т.е. ты сохраняешь 3 таб. дока в 3 файла xls, a затем из 3х файлов xls хочешь получить 1?
не проще ли сразу получить 1 таб. док с нужными тебе группировками, а затем сохранить его в 1 файл xls |
|||
3
1CLama
12.01.12
✎
12:05
|
(2) Так у меня на 3-х листах одного файла Excel должен быть результат.
Работал на своей машине - не копируются группировки, работал на серваке - все ок. В чем может быть причина? Вот код: для наглядности просто на одном файле ТабДок1.Записать (ПутьОбщий+"file1.xls", ТипФайлаТабличногоДокумента.XLS); ТабДок2.Записать (ПутьОбщий+"file2.xls", ТипФайлаТабличногоДокумента.XLS); ТабДок3.Записать (ПутьОбщий+"file3.xls", ТипФайлаТабличногоДокумента.XLS); Excel = Новый COMОбъект ("Excel.Application"); КнигаНовая = Excel.Workbooks.Add(); // Создали новую книгу Excel КнигаНовая_Лист1 = КнигаНовая.WorkSheets(1); Книга1 = Excel.Workbooks.Open(ПутьОбщий+"file1.xls"); Книга1_Лист1 = Книга1.WorkSheets(1); Книга1_Лист1.Activate(); Книга1_Лист1.Cells.Select(); Excel.Selection.Copy(); КнигаНовая_Лист1.Activate(); КнигаНовая_Лист1.Cells.Select(); КнигаНовая_Лист1.Paste(); Excel.Visible = Истина; |
|||
4
Tatitutu
12.01.12
✎
12:09
|
так ты не данные с листа копируй
Книга1_Лист1.Cells.Select(); а копируй сам лист целиком Книга1_Лист1.Select(); и прибудет с тобой счастье |
|||
5
1CLama
12.01.12
✎
12:54
|
Спасибо, друг!
Правильную идею посоветовал. Реализация приблизительно такая должна быть (может кому понадобится): ТабДок1.Записать (ПутьОбщий+"file1.xls", ТипФайлаТабличногоДокумента.XLS); ТабДок2.Записать (ПутьОбщий+"file2.xls", ТипФайлаТабличногоДокумента.XLS); ТабДок3.Записать (ПутьОбщий+"file3.xls", ТипФайлаТабличногоДокумента.XLS); Excel = Новый COMОбъект ("Excel.Application"); КнигаНовая = Excel.Workbooks.Add(); // Создали новую книгу Excel КнигаНовая_Лист1 = КнигаНовая.WorkSheets(1); Книга1 = Excel.Workbooks.Open(ПутьОбщий+"file1.xls"); Книга1_Лист1 = Книга1.WorkSheets(1); Книга1_Лист1.Activate(); Книга1_Лист1.Select(); // с форума совет Книга1_Лист1.Copy(, КнигаНовая_Лист1); // Вот это самый важный момент! // Комментируем //КнигаНовая_Лист1.Activate(); ////КнигаНовая_Лист1.Cells.Select(); //КнигаНовая_Лист1.Select(); //КнигаНовая_Лист1.Paste(); Excel.Visible = Истина; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |