Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

ChDir auf Netzwerkpfad

Forumthread: ChDir auf Netzwerkpfad

ChDir auf Netzwerkpfad
21.06.2004 11:12:30
Robert
Hallo,
ich möchte eine Datei auf einem andern Rechner im Netzwerk öffnen.
Mit Application.FileSearch funktioniert der Pfadwechsel und wenn ich Application.FindFile aufrufe, dort die Datei suche und auf Abbrechen klicke, zeigt mit CurDir den richtigen Netzwerkpfad.
Nur mit ChDir kann ich keinen Netzwerkpfad einstellen (nur lokale Pfade sind möglich).
Hier nochmal der Quellcode:
Application.FindFile 'Ordner eingestellt, dann Abbruch
MsgBox ("ASF: " & CurDir) '"\\Servername\Inbox"
ChDir "C:\Download"
MsgBox ("lokal: " & CurDir) '"C:\Download"
ChDir "\\Servername\Inbox"
MsgBox ("final: " & CurDir) '"C:\Download"
Das ist doch merkwürdig. Ich hoffe, ich habe wieder nur etwas übersehen und Ihr könnt mir helfen.
Gruß Robert
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ChDir auf Netzwerkpfad
Veit
Moin, Moin,
versuch mal ChDrive
Gruß
Ein Veit
AW: ChDir auf Netzwerkpfad
21.06.2004 12:33:59
Robert
Moin, moin Veit,
mit ChDrive funktioniert es nur, wenn man ein Netzlaufwerk erstellt und genau das will ich eigentlich nicht.
Ist doch merkwürdig dass Application.FindFile das hinbekommt und VBA nicht...
Gruß Robert
AW: ChDir auf Netzwerkpfad
Veit
gefunden in der Hilfe:
...
Ist kein Laufwerk angegeben, so wechselt die ChDir-Anweisung das Standardverzeichnis oder den Standardordner auf dem aktuellen Laufwerk.
Bemerkungen
Die ChDir-Anweisung wechselt das Standardverzeichnis, aber nicht das Standardlaufwerk. Ist das Standardlaufwerk zum Beispiel C:, dann wechselt die folgende Anweisung zwar das Standardverzeichnis auf Laufwerk D:, aber C: bleibt das Standardlaufwerk:
...
Das erklärt zwar warum das mit ChDir nicht funzt, aber nicht warum es mit FindFile geht
%-)
Wie wäre es mit einer mail an bill@microsoft.com ? ;-)
Vielleicht weiß der ja Rat.
Gruß
Ein (verwirrter) Veit
Anzeige
AW: ChDir auf Netzwerkpfad
21.06.2004 14:23:18
Robert
Hallo Veit,
da bin ich ja beruhigt, dass es so einfach nicht zu sein scheint ;-)
Schade ist nur, dass es mit AFS solange dauert - ChDir und dann .Open wäre schön schnell gegangen.
Dank' Dir für Deine Mühe!
Gruß Robert
AW: ChDir auf Netzwerkpfad
22.06.2004 06:39:36
Uwe
Hallo Robert,
warum öffnest Du das File nicht direkt?
Workbooks.Open "\\Servername\Inbox\MyFile.xls"
Gruß Uwe
Anzeige
AW: ChDir auf Netzwerkpfad
25.06.2004 18:10:17
Robert
Hallo Uwe,
danke für Deine Antwort. Manchmal kommt man auf die einfachsten Sachen nicht. Die Dateinamen der Dokumente sind alle bekannt - es funktioniert also einwandfrei.
Hatte die email-Benachrichtigung nicht aktiviert, deshalb schreibe ich erst heute.
Schönes Wochenende,
Gruß Robert!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

ChDir auf Netzwerkpfad in Excel VBA


Schritt-für-Schritt-Anleitung

  1. Verständnis der ChDir-Anweisung: Die ChDir-Anweisung wird verwendet, um das Verzeichnis zu ändern, jedoch nicht das Laufwerk. Dies bedeutet, dass du ein Standardverzeichnis innerhalb des aktuellen Laufwerks ändern kannst. Wenn du versuchst, zu einem Netzwerkpfad zu wechseln, wird dies nicht direkt unterstützt.

  2. Verwendung von ChDrive: Um zu einem Netzwerkpfad zu wechseln, kannst du zuerst das Laufwerk mit ChDrive ändern. Das bedeutet, dass du ein Netzlaufwerk erstellen musst, um ChDir erfolgreich anzuwenden. Beispiel:

    ChDrive "Z:" ' Z: ist das Netzlaufwerk
    ChDir "\\Servername\Inbox"
  3. Öffne die Datei direkt: Eine einfachere Methode ist es, die Datei direkt zu öffnen, ohne den Verzeichniswechsel. Dies kann so aussehen:

    Workbooks.Open "\\Servername\Inbox\MyFile.xls"
  4. Fehlerüberprüfung: Stelle sicher, dass der Pfad korrekt ist und dass du die nötigen Berechtigungen hast, um auf den Netzwerkpfad zuzugreifen.


Häufige Fehler und Lösungen

  • Fehler: ChDir funktioniert nicht mit Netzwerkpfad
    Lösung: Verwende ChDrive, um zuerst das Laufwerk zu ändern. Beachte, dass ChDir nur das Verzeichnis innerhalb des aktuellen Laufwerks ändert.

  • Fehler: Datei kann nicht geöffnet werden
    Lösung: Überprüfe, ob der Netzwerkpfad korrekt ist und ob die Datei existiert. Stelle sicher, dass du die richtigen Berechtigungen hast.


Alternative Methoden

  • Direktes Öffnen der Arbeitsmappe: Statt zuerst das Verzeichnis zu wechseln, kannst du die Datei direkt mit:

    Workbooks.Open "\\Servername\Inbox\MyFile.xls"

    öffnen. Dies umgeht das Problem mit ChDir vollständig.

  • Verwende ein Netzlaufwerk: Wenn du häufig auf diesen Netzwerkpfad zugreifen musst, erstelle ein Netzlaufwerk und verwende ChDrive und ChDir wie oben beschrieben.


Praktische Beispiele

  1. Öffnen einer Datei über einen Netzwerkpfad:

    Sub OpenNetworkFile()
       Dim filePath As String
       filePath = "\\Servername\Inbox\MyFile.xls"
       Workbooks.Open filePath
    End Sub
  2. Wechseln des Verzeichnisses und dann Datei öffnen:

    Sub ChangeDirAndOpenFile()
       ChDrive "Z:" ' Z: als Netzlaufwerk
       ChDir "\\Servername\Inbox"
       Workbooks.Open "MyFile.xls"
    End Sub

Tipps für Profis

  • Berechtigungen prüfen: Stelle sicher, dass du die nötigen Berechtigungen für den Zugriff auf den Netzwerkpfad hast. Ein häufiges Problem kann durch fehlende Berechtigungen verursacht werden.

  • Verwende Fehlerbehandlungsroutinen: Implementiere Fehlerbehandlung in deinem VBA-Code, um unerwartete Fehler abzufangen. Beispiel:

    On Error Resume Next
    Workbooks.Open "\\Servername\Inbox\MyFile.xls"
    If Err.Number <> 0 Then
      MsgBox "Fehler beim Öffnen der Datei: " & Err.Description
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Warum funktioniert ChDir nicht mit einem Netzwerkpfad?
ChDir ändert nur das Verzeichnis innerhalb des aktuellen Laufwerks. Um zu einem Netzwerkpfad zu wechseln, musst du zuerst mit ChDrive das Laufwerk ändern.

2. Gibt es eine Möglichkeit, eine Datei ohne ChDrive und ChDir zu öffnen?
Ja, du kannst die Datei direkt mit Workbooks.Open öffnen, indem du den vollständigen Netzwerkpfad angibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige