Подскажите, пожалуйста, что я делаю не так?
Excel с запросами и моделью в Pivot закрывается на этапе обновления сводных таблиц (исходник - результат PQ запросов)
Sub RefreshPQ()
Dim ws As Worksheet, qt As QueryTable, oc As Object, IsBG_Refresh As Boolean
Dim i As Long, spisok
spisok = Array("Çàïðîñ — ðåø_äåòàëü", "Çàïðîñ — ðåø_èñòî÷íèê", "Çàïðîñ — ðåø_ñâîäíàÿ", "Çàïðîñ — ðåø_ñòàòèñòèêà", "Çàïðîñ — ðåø_ñëóæáà", "Çàïðîñ — ðåø_îïåðàòîð", "Çàïðîñ — ðåø_îò÷åò", "Çàïðîñ — ïîâ_äåòàëü", "Çàïðîñ — ïîâ_èñòî÷íèê", "Çàïðîñ — ïîâ_ïåðèîäè÷íîñòü", "Çàïðîñ — ïîâ_ñëóæáà", "Çàïðîñ — ïîâ_îïåðàòîð", "Çàïðîñ — ïîâ_îò÷åò")
For i = LBound(spisok) To UBound(spisok)
Set oc = ThisWorkbook.Connections(spisok(i))
IsBG_Refresh = oc.OLEDBConnection.BackgroundQuery
oc.OLEDBConnection.BackgroundQuery = False
oc.Refresh
oc.OLEDBConnection.BackgroundQuery = IsBG_Refresh
Next
Application.DisplayAlerts = False
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 1").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 2").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 3").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 4").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 5").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 6").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 1").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 2").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 3").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 4").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 5").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 6").PivotCache.Refresh
Application.DisplayAlerts = True
End Sub
Excel с запросами и моделью в Pivot закрывается на этапе обновления сводных таблиц (исходник - результат PQ запросов)
Sub RefreshPQ()
Dim ws As Worksheet, qt As QueryTable, oc As Object, IsBG_Refresh As Boolean
Dim i As Long, spisok
spisok = Array("Çàïðîñ — ðåø_äåòàëü", "Çàïðîñ — ðåø_èñòî÷íèê", "Çàïðîñ — ðåø_ñâîäíàÿ", "Çàïðîñ — ðåø_ñòàòèñòèêà", "Çàïðîñ — ðåø_ñëóæáà", "Çàïðîñ — ðåø_îïåðàòîð", "Çàïðîñ — ðåø_îò÷åò", "Çàïðîñ — ïîâ_äåòàëü", "Çàïðîñ — ïîâ_èñòî÷íèê", "Çàïðîñ — ïîâ_ïåðèîäè÷íîñòü", "Çàïðîñ — ïîâ_ñëóæáà", "Çàïðîñ — ïîâ_îïåðàòîð", "Çàïðîñ — ïîâ_îò÷åò")
For i = LBound(spisok) To UBound(spisok)
Set oc = ThisWorkbook.Connections(spisok(i))
IsBG_Refresh = oc.OLEDBConnection.BackgroundQuery
oc.OLEDBConnection.BackgroundQuery = False
oc.Refresh
oc.OLEDBConnection.BackgroundQuery = IsBG_Refresh
Next
Application.DisplayAlerts = False
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 1").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 2").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 3").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 4").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 5").PivotCache.Refresh
Sheets("ñâîä ïîâòîðíûå").PivotTables("Ñâîäíàÿ 6").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 1").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 2").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 3").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 4").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 5").PivotCache.Refresh
Sheets("ñâîä ðåøåííûå").PivotTables("Ñâîäíàÿ 6").PivotCache.Refresh
Application.DisplayAlerts = True
End Sub