#excel #vba
Вопрос:
Это то, что я пытаюсь сделать : я хотел бы, чтобы новая копия моего файла Excel сохранялась для каждого элемента (по отдельности) в моем слайсере при запуске моего макроса. Проблема в том, что каждый раз, когда я запускаю его, что-то не так с моим циклом For здесь «Для каждого элемента в slBox.SlicerItems», которого я не понимаю. Результаты отладки
Option Explicit
Sub SavingData()
Dim Folder As Workbook
Dim NewFolderName As String
Dim ReportFolder As String
Dim slItem As SlicerItem
Dim slDummy As SlicerItem
Dim slBox As SlicerCache
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Folder = ActiveWorkbook
Set slBox = ActiveWorkbook.SlicerCaches("Slicer_Regroupement_SousR")
ReportFolder = Folder.Sheets("Variables").Range("FileName").Value
ActiveWorkbook.Worksheets("Pilotage").Activate
ChDir ReportFolder
'loop through each slicer item
For Each slItem In slBox.SlicerItems
'clear all items to start
slBox.ClearManualFilter
'test each item against itself
For Each slDummy In slBox.SlicerItems
'if the item equals the item in the first loop, then select it
'otherwise don't show it (thus showing 1 at a time between the nested loops)
If slItem.Name = slDummy.Name Then slDummy.Selected = True Else: slDummy.Selected = False
Next slDummy
NewFolderName = Folder.Sheets("Variables").Range("ReportName").Value
ActiveWorkbook.SaveAs Filename:=ReportFolder amp; "" amp; NewFolderName _
, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Next slItem
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Комментарии:
1. Каков номер ошибки и сообщение?
2. Ошибка во время выполнения «1004»: ошибка, определяемая приложением или объектом