20.01.2005, 12:53 | #1 |
Участник
|
Требуется перенести в кода Excel Buffer код VBA под Excel.
В частном случае, следующий: Код: srcRange = "Отчет!R1C1:R1268C11" destRange = "Сводная!R5C2" pivotName = "СводнаяТаблица1" ActiveWorkbook.PivotCaches.Add(1, srcRange).CreatePivotTable destRange, pivotName, 1 With Sheets("Сводная!").PivotTables("СводнаяТаблица1").PivotFields("Должность") .Orientation = 1 .Position = 1 End With ... ... ActiveSheet.PivotTables("СводнаяТаблица1").AddDataField ActiveSheet.PivotTables _ ("СводнаяТаблица1").PivotFields("Сумма"), "Сумма по полю Сумма", -4157 функцию. Код: CreatePivot(PivotName : Text[250];SheetName : Text[250];SrcSheetName : Text[250];SrcBegRow : Integer;SrcBegCol : Integer;SrcEndRow : In ... (и т.п. - параметры) // лист для сводной таблицы XlWorkSheet := XlWorkBook.Worksheets.Add; XlWorkSheet.Name := SheetName; // дипазон-источник srcrange:=srcsheetname+'!R'+format(srcBegRow)+'C'+format(srcBegCol)+':R'+format(srcendRow)+'C'+format(srcend col); // сводная таблица XlWorkBook.PivotCaches.Add(1, srcrange).CreatePivotTable(sheetname+'!R5C2',PivotName,1); // настройка сводной таблицы XlWorkSheet.PivotTables(PivotName).PivotFields('Должность').Orientation = 1; PivotFields. попробовал создавать Globals с типом Automation и т.д. по аналогии с др. "экселевскими" Globals - никак!!! что же делать? подскажите, как правильно "переводить" обектно-ориентированный код? Спасибо.
__________________
извиняюсь если вопрос ТУП - спрашиваю исключительно потому, что не знаю. спасибо, что не послали |
|
20.01.2005, 13:30 | #2 |
Moderator
|
Код: PivotTable := XlWorkSheet.PivotTables(PivotName); PivotField := PivotTable.PivotFields('Должность'); PivotField.Orientation := 1; |
|
20.01.2005, 13:32 | #3 |
Участник
|
Цитата:
Сообщение от tyrex
Код: PivotTable := XlWorkSheet.PivotTables(PivotName); PivotField := PivotTable.PivotFields('Должность'); PivotField.Orientation := 1;
__________________
извиняюсь если вопрос ТУП - спрашиваю исключительно потому, что не знаю. спасибо, что не послали |
|
20.01.2005, 13:41 | #4 |
Moderator
|
Код: PivotTable : Automation:'Microsoft Excel 11.0 Object Library'.PivotTable"; PivotField: Automation :'Microsoft Excel 11.0 Object Library'.PivotField"; |
|
20.01.2005, 15:24 | #5 |
Участник
|
видимо, я искал черную кошку в темной комнате. проблема-то в следующем.
мне не создать переменные типа automation!!!! их нет в списке типов. у соседа такой проблемы нет. создал с его машины переменные с первым попавшимся subtype, попытался со своей машины установить нужный subtype - увы ((( - not recognized as a GUID и т.п. почему может возникать такая ситуация? поступило предложение переставить офис...
__________________
извиняюсь если вопрос ТУП - спрашиваю исключительно потому, что не знаю. спасибо, что не послали |
|
20.01.2005, 16:12 | #6 |
Участник
|
Возможно будет достаточно переустановить Office Web components?
__________________
С уваженем, rootadmin |
|
21.01.2005, 12:57 | #7 |
Заноза в заднице
|
Цитата:
Сообщение от барбудас
видимо, я искал черную кошку в темной комнате. проблема-то в следующем.
мне не создать переменные типа automation!!!! их нет в списке типов. у соседа такой проблемы нет. создал с его машины переменные с первым попавшимся subtype, попытался со своей машины установить нужный subtype - увы ((( - not recognized as a GUID и т.п. почему может возникать такая ситуация? поступило предложение переставить офис...
__________________
Лень мудрого человека - это необходимое средство нейтрализации кипучей активности руководящих им дураков! |
|