bisher hatte ich mich mit FSO durch die Struktur verschiedener Verzeichnisse "gekämpft". Doch seit der Umstellung auf Excel 2019 (kein Schreibfehler!) erhalte ich einen "Laufzeitfehler 70", "Zugriff verweigert".
Deshalb bin ich gerade dabei, eine Funktion zu erstellen, um Informationen über ein angegebenes Verzeichnis zu erhalten. Dies geschieht in der Weise, dass z. B. ein DIR-Command im Batch abgesetzt wird und das Ergebnis auf eine Datei geschrieben wird, welche dem Aufrufer dann zur Verfügung gestellt wird. Bei diesem DIR-Command sind natürlich diverse Optionen beim Aufruf möglich.
Bisher geschieht das über einen String als einzigen Parameter. Ein möglicher Parameter sieht dabei wie folgt aus:
Result = MyFunc("Dir C:\Benutzer\username\* /S /-C /OGn")
Anschließend wird "Result" in einen Array gestellt:
Lines = Split(Result, vbNewLine)
Soweit funktioniert das Verfahren schon.
Nun möchte ich das Verfahren so erweitern, dass mit einem Aufruf mehrere Verzeichnisse (inkl. Laufwerk) ausgewählt werden können. Dabei stoße ich mit der String-Lösung an meine Grenzen: wie erkenne ich das Ende des 1. Parameter-Teils, um den 2. und weitere Parameter zu verarbeiten.
Ich habe auch daran gedacht, die Informationen in Form eines Array zu übergeben. Aber dann müsste ich diese Schreibweise auch machen, wenn ich nur einen Parameter-String benutze.
Kann ich in der aufgerufenen Funktion erkennen, ob mir ein Array oder ein "normaler" String übergeben wurde? Und wenn ja, wie?
War kann mir dazu einen Rat (ggf. mit Muster) geben?
Gruß
Werner