Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ordner öffnen mit Komma im Ordnernamen

Forumthread: Ordner öffnen mit Komma im Ordnernamen

Ordner öffnen mit Komma im Ordnernamen
26.10.2012 14:12:33
Jürgen
Hallo zusammen,
aus Excel heraus möchte ich den Explorer öffnen und mir Ordner zu bestimmten vorher definierten Themen anzeigen lassen. Das funktioniert mit
Shell "Explorer.exe " & Verzeichnis, vbNormalFocus
auch im Regelfall problemlos. Wenn jedoch im Pfad bzw. im Ordnernamen ein Komma vorkommt geht das nicht mehr. Die Variable "Verzeichnis" beinhaltet dabei den Pfad und den Ordnernamen. Heißt der Pfad (die Variable Verzeichnis) z. B. "C:\4711 - Dokumente" funktioniert's, heißt er jedoch "C:\4711, Dokumente" funktioniert's eben nicht. Scheint also am Komma zu liegen. Leider lässt sich kaum verhindern dass immer mal wieder jemand ein Komma bei der Vergabe von Ordnernamen verwendet.
Meine Frage daher: Wie kann ich Excel dazu bewegen auch Ordner zu öffnen in deren Namen ein Komma vorkommt?
Vielen Dank im voraus,
Jürgen

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordner öffnen mit Komma im Ordnernamen
26.10.2012 15:27:01
Josef

Hallo Jürgen,
probier es mal so.

Shell "Explorer.exe """ & Verzeichnis & """, vbNormalFocus"


« Gruß Sepp »

Anzeige
AW: Ordner öffnen mit Komma im Ordnernamen
29.10.2012 08:11:21
Jürgen
Hallo Josef,
vielen Dank für Deinen Tip, leider funktioniert's damit auch nicht.
Bei meinem Code lautet die Fehlermeldung:
Der Pfad "Dokumente" ist nicht vorhanden oder verweist auf kein Verzeichnis
Bei Deinem Code lautet sie:
Der Pfad "vbNormalFocus" ist nicht vorhanden oder verweist auf kein Verzeichnis
Wie gesagt, wenn ich das Komme entferne oder durch ein anderes Zeichen ersetze funktioniert's einwandfrei. Pfad und Ordner werden also eigentlich fehlerfrei erkannt.
Gruß, Jürgen

Anzeige
AW: Ordner öffnen mit Komma im Ordnernamen
29.10.2012 08:38:32
Tino
Hallo,
kannst mal so versuchen, den Pfad Dos kompatibel machen.
Kommt in ein Modul
Private Declare Function GetShortPathNameA Lib "kernel32" ( _
ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, _
ByVal cchBuffer As Long) As Long
Public Function ShortPath(ByRef Path As String) As String
Dim n As Long
ShortPath = Space$(256)
n = GetShortPathNameA(Path, ShortPath, 255)
ShortPath = Left$(ShortPath, n)
End Function
Beispiel Verwendung
Shell "Explorer.exe " & ShortPath(Verzeichnis), vbNormalFocus
oder auch
Verzeichnis = ShortPath(Verzeichnis)
Shell "Explorer.exe " & Verzeichnis, vbNormalFocus
Gruß Tino

Anzeige
AW: Ordner öffnen mit Komma im Ordnernamen
29.10.2012 09:13:46
Jürgen
Hallo Tino,
damit funktioniert's ganz ausgezeichnet!
Vielen Dank dafür und einen schönen entspannten Tag noch!
Gruß, Jürgen
;
Anzeige
Anzeige

Infobox / Tutorial

Ordner öffnen mit Komma im Ordnernamen


Schritt-für-Schritt-Anleitung

Um einen Ordner in Excel zu öffnen, dessen Name ein Komma enthält, kannst du folgendes VBA-Skript verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Erstelle ein neues Modul, indem du auf Einfügen > Modul klickst.
  3. Füge den folgenden Code in das Modul ein:
Private Declare Function GetShortPathNameA Lib "kernel32" ( _
ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, _
ByVal cchBuffer As Long) As Long

Public Function ShortPath(ByRef Path As String) As String
    Dim n As Long
    ShortPath = Space$(256)
    n = GetShortPathNameA(Path, ShortPath, 255)
    ShortPath = Left$(ShortPath, n)
End Function

Sub OrdnerOeffnenMitKomma()
    Dim Verzeichnis As String
    Verzeichnis = "C:\4711, Dokumente" ' Beispielpfad
    Shell "Explorer.exe " & ShortPath(Verzeichnis), vbNormalFocus
End Sub
  1. Passe den Verzeichnis-Pfad an deinen gewünschten Ordner an.
  2. Führe das Skript aus, um den Ordner zu öffnen.

Häufige Fehler und Lösungen

  • Fehlermeldung: "Der Pfad ist nicht vorhanden oder verweist auf kein Verzeichnis."

    • Lösung: Überprüfe, ob der Pfad korrekt eingegeben wurde und ob der Ordner tatsächlich existiert.
  • Fehlermeldung: "vbNormalFocus ist nicht vorhanden oder verweist auf kein Verzeichnis."

    • Lösung: Stelle sicher, dass du den Shell-Befehl korrekt formatiert hast. Der vbNormalFocus sollte nicht in Anführungszeichen gesetzt werden.

Alternative Methoden

Falls du Schwierigkeiten mit der obigen Methode hast, kannst du auch versuchen, den Pfad in einen kurzen DOS-Pfad zu konvertieren, um Probleme mit dem Komma im Ordnernamen zu umgehen:

Verzeichnis = ShortPath(Verzeichnis)
Shell "Explorer.exe " & Verzeichnis, vbNormalFocus

Diese Methode sorgt dafür, dass der Pfad in ein Format umgewandelt wird, das keine Probleme mit Kommas oder anderen Sonderzeichen hat.


Praktische Beispiele

Hier sind einige weitere Beispiele, wie du den Shell-Befehl verwenden kannst, um unterschiedliche Ordner zu öffnen:

  1. Ordner mit Komma im Namen:

    Verzeichnis = "C:\Projekte, 2023"
    Shell "Explorer.exe " & ShortPath(Verzeichnis), vbNormalFocus
  2. Ordner ohne Komma:

    Verzeichnis = "C:\Projekte"
    Shell "Explorer.exe " & Verzeichnis, vbNormalFocus
  3. Dynamisches Setzen des Ordners:

    Verzeichnis = InputBox("Bitte den Pfad eingeben:")
    Shell "Explorer.exe " & ShortPath(Verzeichnis), vbNormalFocus

Tipps für Profis

  • Wenn du häufig mit Ordnern arbeitest, die Kommas im Namen enthalten, erstelle eine Funktion, die den ShortPath automatisch anwendet.
  • Speichere deine VBA-Skripte in einer personalisierten Excel-Vorlage, um sie schnell für zukünftige Projekte nutzen zu können.
  • Nutze die Excel-Dokumentation und VBA-Hilfefunktionen, um mehr über die Shell-Funktion und ihre Anwendungsmöglichkeiten zu erfahren.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass der Code in allen Excel-Versionen funktioniert? Der bereitgestellte Code funktioniert in den meisten aktuellen Excel-Versionen, die VBA unterstützen. Achte darauf, dass du die richtigen Berechtigungen hast, um Makros auszuführen.

2. Was mache ich, wenn ich einen Fehler beim Ausführen des Skripts erhalte? Überprüfe den eingegebenen Pfad und stelle sicher, dass der Ordner existiert. Teste den Code mit einem einfacheren Pfad, um sicherzustellen, dass die Grundstruktur funktioniert.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige