Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Метод завершен не верно / 6 сообщений из 6, страница 1 из 1
28.07.2014, 11:15
    #38707081
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
Здравствуйте.
У меня в Access заматывается ряд отчетов каждый день. Из Excel идет привязка к данным из Access в виде сводных таблиц. Далее с поморью модуля VBA идет обновление Excel файла. Таким образом заменяются данные за вчера на сегодняшние в Excel, так как они обновились в Access.
Таких отчетов у меня около 100.
Модуль обновления следующий:

Код: vbnet
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.
Function vivod()
FileCopy "D:\Отчеты\null\Справочник магазинов.xlsx", "\\fs\МТД\Справочники\Справочник магазинов.xlsx"
fresh ("\\fs\МТД\Справочники\Справочник магазинов.xlsx")
End

Function fresh(b1 As String)
Dim book1 As Excel.Workbook
Dim sheet1 As Excel.Worksheet
Dim pt1 As Excel.PivotTable
Dim i, j As Integer
Set book1 = Excel.Workbooks.Open(b1)
For i = 1 To book1.Worksheets.Count
Set sheet1 = book1.Worksheets(i)
If sheet1.PivotTables.Count = 0 And (sheet1.Name Like "*îïèñàíèå*") = False Then
sheet1.ListObjects.Item(1).QueryTable.Refresh
End If
Next
For i = 1 To book1.Worksheets.Count
Set sheet1 = book1.Worksheets(i)
If sheet1.PivotTables.Count > 0 Then
For j = 1 To sheet1.PivotTables.Count
Set pt1 = sheet1.PivotTables(j)
pt1.RefreshTable
Next
End If
Next
Excel.Application.DisplayAlerts = False
book1.Close savechanges:=True
End Function



Я не знаток VBA, потому этот модуль я взял с этого форума. И он долгое время хорошо работал. Но недавно на одном из отчетов стала возникать ошибка:

Run-time error '1004':
Метод RefreshTable завершен неверно.

ошибка на строке:

Код: vbnet
1.
pt1.RefreshTable



Подскажите как это исправить?
...
Рейтинг: 0 / 0
31.07.2014, 13:31
    #38709989
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
Im_Max,

Попробуйте обновить сводную таблицу вручную и опишите результат.
...
Рейтинг: 0 / 0
31.07.2014, 13:53
    #38710019
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
iMrTidy,

Вручную обновляется без ошибок.
...
Рейтинг: 0 / 0
31.07.2014, 17:37
    #38710263
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
Im_Max,

В файле только одна сводная таблица?
...
Рейтинг: 0 / 0
31.07.2014, 18:26
    #38710310
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
Im_Max,

Попробуйте рефрешить не не таблицу, а PivotCache к ней. Помню в зависимости от используемого драйвера ODBC или OLEDB, были свои глюки
...
Рейтинг: 0 / 0
05.08.2014, 12:22
    #38712902
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Метод завершен не верно
В файле больше 10-ти сводных. По 1 на листе.

Код я брал у прошлого сотрудника. В нем не разбираюсь совсем.
Как правильно "рефрешить не не таблицу, а PivotCache к ней."?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Метод завершен не верно / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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