Laufwerksbuchstabe
Wilhelm
In einem Excel-VBA-Programm NL-Tool.xls muss das Programm Daten in eine getrennte Excel-Datei Statistik.xls eintragen. Um die Statistik-Datei öffnen zu können, sind der Dateiname und der Verzeichnispfad als Konstanten im Code hinterlegt (Public Const). Das Programm soll auf mehreren PCs in einem Netzwerk laufen.
Das Problem ist nun, dass alle Verzeichnisse auf einem externen Server liegen, auf den alle PCs Zugriff haben, jedoch sind diese Verzeichnisse auf den verschiedenen PCs mit unterschiedlichen Laufwerksbuchstaben gemappt, so dass ich keine Pfadangabe machen kann, die für alle PCs gilt. Für den einen PC ist der Pfad z.B. I:\Tools\Statistik.xls, während er für den anderen PC G:\Tools\Statistik.xls und für den dritten O:\Tools\ Statistik.xls heißen müsste.
Ich habe mir bisher so geholfen, dass ich den Laufwerksbuchstaben aus dem aktuellen Verzeichnis abgefragt habe:
"Laufwerk = Left(Application.ActualWorkbook.Path, 3)"
Leider ist das aktuelle Laufwerk nicht immer das Laufwerk, auf dem die Datei Statistik.xls liegt. In diesem Falle findet mein Programm das Laufwerk nicht und ich muss den Buchstaben manuell eingeben. Das funktioniert zwar so, ist aber lästig.
Gibt es eine Möglichkeit, die Pfadangabe so zu formulieren, dass dabei nicht der gemappte Laufwerksbuchstabe verwendet wird, sondern der Name des Verzeichnisses auf dem Server (der ja für alle PCs identisch ist)?
Hier ist ein Ausschnitt des Verzeichnisbaums auf meinem PC; es geht dabei um das mit XXXXX gekennzeichnete Verzeichnis, welches auf meinem PC mit I: gemappt ist, auf anderen PCs mit G: oder O:.
Desktop
....Eigene Dateien
....My Computer DE-W-0047834 DEU101520
........Diskette(A:)
........Lokaler Datenträger (C:)
........CD-Laufwerk (D:)
........MEMORYBIRD(E:)
........$DEG028762-AVertrieb auf "De-s-0109796"(G:)
........Deu101520$ auf "De-s-0109796" (H:)
XX....$DEG058704-orderprocessing auf de-s-0109796(I:)
............Tools
............Angebote
............Aufträge
............---usw.
Wie müsste der Code für eine solche Pfadangabe unter Verwendung des Namens
$DEG058704-orderprocessing auf de-s-0109796 aussehen?
Herzlichen Dank im Voraus für Eure Hilfe!
Wilhelm