20.03.2024, 22:45
Ich habe folgenden Code:
Dieser listet alle unterordner eine Ebene tiefer ab I2 auf. (funktioniert)
Es kommt allerdings eine 400 Meldung. Warum habe ich noch nicht gefunden. Scheint am falsch eingebundenen Verweis zu liegen.
Und da steckt wohl der Fehler.
Denn im Namensmanager trägt er als Bezug =Dateiablage!'I2':'I5' ein. Richtig sollte aber =Dateiablage!I2:I5 sein.
Wie bekomme ich den Bezug richtig hin?
Vielen Dank
Code:
Sub ordnerauslesen()
If Range("I2") <> "" Then
Call del_ordner
End If
Dim oFolder As Object, oSFolder As Object, oFS As Object
Set oFS = CreateObject("Scripting.filesystemobject")
Set oFolder = oFS.getfolder(Range("D1").Value) '("C:\Users\Andreas\Documents\Test\")
For Each oSFolder In oFolder.subfolders
ActiveSheet.Cells(Rows.Count, 9).End(xlUp).Offset(1) = oSFolder.Name
Next
lRow = ActiveSheet.Cells(Rows.Count, 9).End(xlUp).Row
ActiveWorkbook.Names.Add Name:="Ordnername", RefersToR1C1:="=Dateiablage!I2:I" & lRow
'Sheets("Ordner").Visible = False
ActiveSheet.Range("D10").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=Ordnername"
End Sub
Dieser listet alle unterordner eine Ebene tiefer ab I2 auf. (funktioniert)
Es kommt allerdings eine 400 Meldung. Warum habe ich noch nicht gefunden. Scheint am falsch eingebundenen Verweis zu liegen.
Und da steckt wohl der Fehler.
Denn im Namensmanager trägt er als Bezug =Dateiablage!'I2':'I5' ein. Richtig sollte aber =Dateiablage!I2:I5 sein.
Wie bekomme ich den Bezug richtig hin?
Vielen Dank