ich suche auf die schnelle eine Lösung für mein kleines Excel/ VBA Problem. Ich habe festgestellt, dass ich schon mal etwas fitter mit VBA war und komme nun nicht weiter.
Aufgabenstellung:
1. Ordner im Netzlaufwerk, der jeweils wieder Unterordner enthält (1-2 weitere Ebenen)
Diese Ordner möchte ich nun in Excel aufgelistet bekommen. Hierzu habe ich im Netz
auch ein Makro gefunden dass zum Teil funktioniert.
Allerdings soll die Datei auf unterschiedliche Seicherorte -je nach Bedarf-zugreifen um die jeweiligen Ordner zu finden und aufzulisten.
Ich habe nun folgendes Modul:
Public Function Pfad_Datei(Blatt$) As String
Dim Pfad As String
Dim Datei As String
With Worksheets(Blatt$)
'Hole aus Zelle B1 den Pfad
Pfad = .Range("B1").Value
'Hole aus Zelle B2 den Dateinamen
Datei = .Range("B2").Value
End With
'Überprüfe, ob Pfad am Ende einen "\" hat; falls nicht füge ihn an
If Right(Pfad, 1) "\" Then Pfad = Pfad & "\"
'Gib beides Pfad+Dateiname als Rückgabewert aus der Funktion zurück
Pfad_Datei = Pfad & Datei
End Function
Hier wird mir ja nur ein Pfad generiert. Ich benötige aber 5 Pfade, welche ich durch Eingabe in der Zelle B2 bis B6 definiere.
Habe schon versucht " Datei = .Range("B2") .Value" &
"Pfad_Datei = Pfad & Datei" durch "Datei 3= .Range("B3") .Value" &
"Pfad_Datei3 = Pfad & Datei3" zu ersetzen, habe anscheinend aber die falsche Syntax.
2. Fragestellung (Trivial)
Wie bekomme ich mittels Schaltfläche vier Makros (Jeweils Funktion je Blatt) als Abfolge zum laufen. "Run.application" geht hier irgendwie nicht da es sich um Funktionen handelt.
Option Explicit
Dim FSO, FO, FU, f
Dim lRow As Long
Dim icol As Integer
Public Sub Ordner_inMF()
Set FSO = CreateObject("Scripting.FileSystemObject")
icol = 1
lRow = 0
GetSubFolders "G:\Ralf\++++ in MF"
End Sub
Function GetSubFolders(Pfad)
Set FO = FSO.GetFolder(Pfad)
Set FU = FO.SubFolders
On Error Resume Next
For Each f In FU
lRow = lRow + 1
Cells(lRow, icol) = f.Name
Next
icol = icol - 1
End Function
Ich sage schonmal jetzt Danke für jeden Tipp.LG Ralf