Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка на CreatePivotTable / 20 сообщений из 20, страница 1 из 1
25.10.2006, 16:12:35
    #34080828
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Возникает ошибка на строке с ###
Код: 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
25.10.2006, 16:25:36
    #34080882
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Сама ошибка та
Run-time error '1004'
Application-defined or object-defined error
...
Рейтинг: 0 / 0
25.10.2006, 16:37:16
    #34080942
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Может стоит добавить полное указание на каком листе мы хотим добавить таблицу.

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

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

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

Код: 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
25.10.2006, 17:50:45
    #34081279
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
ААА Ужас!!!!
Запускаю его же сгенерированный макрос он на него тоже ругается ((((
Причем, тамже и также ((((
...
Рейтинг: 0 / 0
25.10.2006, 17:56:38
    #34081303
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
сноси сервис пук номер 3
...
Рейтинг: 0 / 0
25.10.2006, 17:58:59
    #34081311
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Загляни в меню "вставка - имя - присвоить"
может ты там найдешь скажем "ТовОтч" или "СводнаяТаблица1"


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


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


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

С макорсом записанным самим екселем это помогло... а со своей байдой еще не разобрался.... (((
...
Рейтинг: 0 / 0
25.10.2006, 19:03:16
    #34081509
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
мда...
может у меня проблема с источником данных?
вот что вставляется в .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
26.10.2006, 09:28:19
    #34082272
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
up
...
Рейтинг: 0 / 0
26.10.2006, 10:16:50
    #34082408
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Код: 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
26.10.2006, 10:56:24
    #34082591
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Так отрабатывает.

Код: 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
26.10.2006, 13:39:11
    #34083495
ananax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка на CreatePivotTable
Кажется, что ошибка не в создании сводной таблицы, а в OLAPовском кубе, который ексель создает...
Кто-нить подобными вещами занимался?
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка на CreatePivotTable / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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