Microsoft Excel

Herbers Excel/VBA-Archiv

VBA Loop über Dropdownliste

Betrifft: VBA Loop über Dropdownliste von: Lara
Geschrieben am: 28.09.2020 11:40:46

Hallo Zusammen,

ich habe folgende Ausgangssituation:
In einer Basisdatei (wbDB) liegen die Rohdaten und die Steuerung des Makros. Dieses Marko öffnet eine Masterdatei (wbMA), die wiederum ein Steuerungsblatt (MA_Steuerung) enthält. auf diesem MA_Steuerung befindet sich in B3 ein Dropdownfeld.
Mein Makro soll für jeden Inhalt dieses Dropdownfelds die unten aufgeführten Schritte durchführen.
Das Makro klappt auch soweit, nur wird nicht in die ForEach-Schleife gegangen. Anbei mein Code. Seht ihr vielleicht, warum meine Schleife nicht läuft?

Vielen Dank und schöne Grüße,
Lara

Sub TeilTest1()

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Dim dvCell As Range
Dim inputRange As Range
Dim c As Range

Dim Name
    Name = wbMA.Worksheets("MA_Steuerung").Range("B3")

Dim Path
    Path = wbDB.Worksheets("DB_Steuerung").Range("C4")

Dim wbMA As Workbook
Dim wbDB As Workbook

Set wbDB = ActiveWorkbook

Dim Masterfile As String
    Masterfile = ActiveWorkbook.Worksheets("DB_Steuerung").Range("C3")
    Workbooks.Open Filename:=Masterfile
    Set wbMA = ActiveWorkbook
        
Set dvCell = wbMA.Worksheets("MA_Steuerung").Range("B3")
Set inputRange = Evaluate(dvCell.Validation.Formula1)


For Each c In inputRange
    dvCell = c.Value
    
    Sheets("Einzelposten").Select
    Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False
    Sheets("Kostenjournal").Select
    ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh
    
    ActiveWorkbook.SaveAs Filename:=Path & "\" & Name
    
Next c

Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

Betrifft: AW: VBA Loop über Dropdownliste
von: Rudi Maintaire
Geschrieben am: 28.09.2020 12:16:10

Hallo,
ist inputRange evtl. =Nothing?
Was steht denn in dvCell.Validation.Formula1?

Gruß
Rudi

Betrifft: AW: VBA Loop über Dropdownliste
von: Lara
Geschrieben am: 28.09.2020 16:58:50

Hallo Rudi,

Das Wert von inputRange wechselt von "Nothing" auf "Leer".

Was dvCell.Validation.Formula1 bewirkt, weiß ich leider nicht - ich habe mir das Makro aus dem Internet zusammengesucht.
Ich bin offen für bessere Vorschläge für die gesuchte Schleife.

Vielen Dank,
Lara

Betrifft: AW: VBA Loop über Dropdownliste
von: Rudi Maintaire
Geschrieben am: 29.09.2020 12:27:59

das ist die Formel für die Datenüberprüfung.

Betrifft: AW: VBA ForEach über Dropdownliste
von: Lara
Geschrieben am: 29.09.2020 13:32:28

Dann ist die Datenüberprüfung leider leer.

Hat jemand eine Idee, wie ich mein Problem lösen oder das Makro umschreiben muss?

Vielen Dank für jeden Hilfe,
Lara

Betrifft: hat jemand eine Idee?
von: Rudi Maintaire
Geschrieben am: 29.09.2020 21:18:02

Hallo,
dann brauchen wir mehr Details und eine Beispielmappe.

Gruß
Rudi

Betrifft: AW: hat jemand eine Idee?
von: Lara
Geschrieben am: 02.10.2020 15:06:49

Ich habe das Problem in der Zwischenzeit selber lösen können. Vielen Dank für all das Feedback und die Anregungen.

Lara