powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка на CreatePivotTable
20 сообщений из 20, страница 1 из 1
Ошибка на CreatePivotTable
    #34080828
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возникает ошибка на строке с ###
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
With ActiveWorkbook.PivotCaches.Add(SourceType:=xlExternal)
        .Connection = CubeDef
        .CommandType = xlCmdCube
        .CommandText = Array("OCWCube")
        .MaintainConnection = True
###  .CreatePivotTable TableDestination:=Range("A5"), TableName:="ТовОтч"
    End With

в Office XP SP2 такой ошибки нет.. в 3 сервиспаке она уже появляется
Скажите.. куда копать?
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34080882
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сама ошибка та
Run-time error '1004'
Application-defined or object-defined error
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34080942
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может стоит добавить полное указание на каком листе мы хотим добавить таблицу.

Код: plaintext
TableDestination:=ActiveWorkbook.Worksheets( 1 ).Range("A5")
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081009
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может поможет как пример
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081166
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan33может поможет как пример

Епрст... там же ошибка...
Код: plaintext
1.
2.
3.
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, _
                SourceData:="=Items").CreatePivotTable TableDestination:="", _
                TableName:="ItemList"

Причем таже...
может мне какой апдейт самого офиса поможет?
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081206
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот что делает сам ексель по записи макроса.....

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    With ActiveWorkbook.PivotCaches.Add(SourceType:=xlExternal)
        .Connection = СоннектионСтринг
        .CommandType = xlCmdSql
        .CommandText = Array("Тут всякая ерунда... ))))")
        .CreatePivotTable TableDestination:="[Книга1]Лист1!R3C1", TableName:= _
        "СводнаяТаблица1", DefaultVersion:=xlPivotTableVersion10
    End With
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081279
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ААА Ужас!!!!
Запускаю его же сгенерированный макрос он на него тоже ругается ((((
Причем, тамже и также ((((
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081303
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сноси сервис пук номер 3
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081311
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Загляни в меню "вставка - имя - присвоить"
может ты там найдешь скажем "ТовОтч" или "СводнаяТаблица1"


P.S.
И не вздумай сносить сервис пак, смысла в этом нет.
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081331
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkodorИ не вздумай сносить сервис пак, смысла в этом нет.
Хорошо... Ну фишка как раз в том, чтобы перейти от XP к 2003 офису...
А по поводу "вставка - имя - присвоить" заглянул но ничего не понял
а по поводу скрипта...
его собственный скрипт заработал, когда эту сводную таблицу удалил и макрос только после этого запустил...
а в своем скрипте так и не понял как заставить его работать (((
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081378
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkodorЗагляни в меню "вставка - имя - присвоить"
может ты там найдешь скажем "ТовОтч" или "СводнаяТаблица1"


P.S.
И не вздумай сносить сервис пак, смысла в этом нет. а проблема есть
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081397
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkodorЗагляни в меню "вставка - имя - присвоить"
может ты там найдешь скажем "ТовОтч" или "СводнаяТаблица1"


P.S.
И не вздумай сносить сервис пак, смысла в этом нет. раз такие смыслопознаватели тут есть, то у меня был случай, одна штука в экселе запускаться не хотела, требовла сервис пака 2 для виндовса, прям так и говорила, нету сервис пака номер 2 и делать я этот не буду. какой смысл?
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081412
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
смысл в том что если на листе есть табл. с именем то второй раз её уже не создать, сначало удалить надо
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081427
№№
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин! Единственная ошибка, которая бывает при создании сводной таблицы,
вот эта.
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081458
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А... я это тоже обнаружил... и поэтому стал делать
Код: plaintext
TableDestination:="" 

С макорсом записанным самим екселем это помогло... а со своей байдой еще не разобрался.... (((
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34081509
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мда...
может у меня проблема с источником данных?
вот что вставляется в .Connection
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
OLEDB;Provider=MSOLAP;
Initial Catalog=[OCWCube];  
CreateCube=CREATE CUBE [OCWCube] ( 
DIMENSION [Дата] TYPE TIME,    
LEVEL [Все] TYPE ALL,    
LEVEL [Год] TYPE YEAR,    
LEVEL [Квартал] TYPE QUARTER,    
LEVEL [Месяц] TYPE MONTH,    
LEVEL [День] TYPE DAY,  
DIMENSION [Группа товаров], 
LEVEL [Все] TYPE ALL,  
LEVEL [Группа товаров],   
DIMENSION [Товар],    
LEVEL [Все] TYPE ALL,    
LEVEL [Товар],   
DIMENSION [Клиент],    
LEVEL [Все] TYPE ALL,    
LEVEL [Клиент],    
LEVEL [Контрагент],
DIMENSION [Адрес],    
LEVEL [Все] TYPE ALL,    
LEVEL [Адрес],    

DIMENSION [Оператор],    
LEVEL [Все] TYPE ALL,    
LEVEL [Оператор],   
DIMENSION [Менеджер],    
LEVEL [Все] TYPE ALL,    
LEVEL [Менеджер],   
DIMENSION [Склад],    
LEVEL [Все] TYPE ALL,    
LEVEL [Склад],   
DIMENSION [Подразделение],    
LEVEL [Все] TYPE ALL,    
LEVEL [Подразделение],   
DIMENSION [Должность],    
LEVEL [Все] TYPE ALL,    
LEVEL [Должность], 
DIMENSION [Тип накладной],    
LEVEL [Все] TYPE ALL,    
LEVEL [Тип накладной],  
MEASURE [Сумма] FUNCTION SUM, 
MEASURE [Маржа] FUNCTION SUM,  
MEASURE [Упаковки]    FUNCTION SUM,   
MEASURE [Вес]    FUNCTION SUM  );  
InsertInto=INSERT INTO OCWCube([Адрес],[Дата], [Должность].[Должность], [Контрагент], [Подразделение].[Подразделение], [Склад].[Склад], [Менеджер].[Менеджер], [Оператор].[Оператор], [Клиент].[Клиент], [Товар].[Товар], [Группа товаров].[Группа товаров], [Тип накладной].[Тип накладной], [Сумма], [Маржа], [Упаковки], [Вес])  
OPTIONS ATTEMPT_ANALYSIS  SELECT CUBE.ADDRESS,CUBE.DELIVERY_DATE, CUBE.MNG_POSITION, 
                                 CUBE.CLIENT_NAME, CUBE.COPY_CLIENT_NAME, 
                          CUBE.WH_NAME, CUBE.MNG_NAME, CUBE.OP_NAME, CUBE.PARENT_NAME, 
                          CUBE.PROD_NAME, CUBE.PROD_TYPE_NAME, CUBE.INVOICE_TYPE_NAME, 
                          CUBE.POS_SUM, CUBE.BENEFIT, CUBE.PACKAGE, CUBE.WEIGHT  
FROM %s CUBE WHERE  1 = 1  %s;  
Source_DSN="DSN=Oracle for OLAP;UID=%s;PWD=%s;SERVER=%s;";UseExistingFile=False
%s заменяется на необходимые данные другой прогой.... (((
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34082272
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
up
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34082408
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
Sub Macro1()
'   Записанный макрос
    Range("A1").Select
    ActiveWorkbook.PivotCaches.Add _
        (SourceType:=xlDatabase, _
        SourceData:="Лист1!R1C1:R13C4"). _
        CreatePivotTable _
        TableDestination:="", _
        TableName:="СводнаяТаблица1", _
        DefaultVersion:=xlPivotTableVersion10
    
    ActiveSheet.PivotTableWizard _
        TableDestination:=ActiveSheet.Cells( 3 ,  1 )
    ActiveSheet.Cells( 3 ,  1 ).Select
    
    With ActiveSheet.PivotTables("СводнаяТаблица1"). _
        PivotFields("Регион")
        .Orientation = xlPageField
        .Position =  1 
    End With
    
    With ActiveSheet.PivotTables("СводнаяТаблица1"). _
        PivotFields("Представитель")
        .Orientation = xlRowField
        .Position =  1 
    End With
    
    With ActiveSheet.PivotTables("СводнаяТаблица1"). _
        PivotFields("Месяц")
        .Orientation = xlColumnField
        .Position =  1 
    End With
    ActiveSheet.PivotTables("СводнаяТаблица1"). _
        AddDataField ActiveSheet.PivotTables("СводнаяТаблица1"). _
        PivotFields("Продажи"), "Сумма по полю Продажи", xlSum
End Sub

Sub CreatePivotTable()
'   Вручную созданный макрос
    Dim PTCache As PivotCache
    Dim PT As PivotTable
    
    Set PTCache = ActiveWorkbook.PivotCaches.Add _
        (SourceType:=xlDatabase, _
         SourceData:=Worksheets("Лист1").Range("A1").CurrentRegion.Address)
        
    Set PT = PTCache.CreatePivotTable _
        (TableDestination:="", _
         TableName:="СводнаяТаблица3")
    
    With PT
        .PivotFields("Регион").Orientation = xlPageField
        .PivotFields("Месяц").Orientation = xlColumnField
        .PivotFields("Представитель").Orientation = xlRowField
        .PivotFields("Продажи").Orientation = xlDataField
    End With
End Sub
из книги Джона Уокенбаха
может поможет
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34082591
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так отрабатывает.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Sub CreatePivotTable2()
'   Вручную созданный макрос
    Dim PTCache As PivotCache
    Dim PT As PivotTable, PT2 As PivotTable

    For Each PT In Worksheets("Лист2").PivotTables
        Set PT2 = PT
        If PT2.Name = "СводнаяТаблица1" Then PT2.TableRange2.Delete
    Next
    
    Set PTCache = ActiveWorkbook.PivotCaches.Add _
        (SourceType:=xlDatabase, _
         SourceData:=Worksheets("Лист1").Range("A1").CurrentRegion.Address)
        
    Set PT = PTCache.CreatePivotTable _
        (TableDestination:=Worksheets("Лист2").Range("A1"), _
         TableName:="СводнаяТаблица1")
    
    With PT
        .PivotFields( 1 ).Orientation = xlPageField
        .PivotFields( 2 ).Orientation = xlColumnField
        .PivotFields( 3 ).Orientation = xlRowField
        .PivotFields( 4 ).Orientation = xlDataField
    End With
End Sub
Только зачем каждый раз создавать новую табл.
Может лучше один раз создать(в ручную), а потом (програмно) обновлять её.
Код: plaintext
1.
2.
3.
    For Each PT In Worksheets("Лист2").PivotTables
        Set PT2 = PT
        If PT2.Name = "СводнаяТаблица1" Then PT2.RefreshTable ' TableRange2.Delete
    Next
...
Рейтинг: 0 / 0
Ошибка на CreatePivotTable
    #34083495
ananax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кажется, что ошибка не в создании сводной таблицы, а в OLAPовском кубе, который ексель создает...
Кто-нить подобными вещами занимался?
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка на CreatePivotTable
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]