Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

Dropdown mit Ordnerdaten füllen Bezug
#1
Ich habe folgenden Code:

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
Antworten Top
#2
Den RefersToR1C1 habe ich jetzt angepasst! (Funktioniert)

ActiveWorkbook.Names.Add Name:="Ordnername", RefersToR1C1:="=Dateiablage!R2C9:R" & lRow & "C9"

Allerdings bleibt die 400 Meldung.
Antworten Top
#3
schau mal:

https://www.clever-excel-forum.de/Thread...n=lastpost
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#4
Moin,

Noch zur Ergänzung:
400er Fehler haben keine Fehlerbeschreibung und lassen sich in aller Regel nicht nachstellen und sich deshalb im Debugging unfassbar schwer beheben. Meist hilft ein Neuanfang oder eine alternative Herangehensweise.

Viele Grüße
derHöpp
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste