Clever-Excel-Forum

Normale Version: VBA Ordner öffnen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Zitat:Der eigentliche Pfad beinhaltet ca. 80.000 Ordner in denen jeweils Dateien gespeichert wurden. Um nun den richtigen Ordner schnell finden zu können, soll mittels Eingabe in der TextBox dieser geöffnet werden. Das liest sich jetzt sicherlich total behämmert, weil ja Windows von Hause aus schon eine Suchfunktion hat, ABER ich muss es mit Excel und einer UserForm machen.

Wie, Du hast 80.000 Unter-Ordner in einem Ordner und es soll nur auf dieser Ebene nach dem Unterordner gesucht werden?
Korrekt!
Das ist ziemlich strange.

Ersetze
Code:
lngTMP = SearchTreeForFile(strPath, "*" & TextBox1.Text & "*", strPathName)


mit

Code:
lngTMP = Dir(strPath, "\" & TextBox1.Text, vbDirectory)
Das sucht nur im Verzeichnis strPath und WildCard Suche ist AFAIK so nicht möglich, also keine * oder ? eingeben, das gehr krachen. Da müsste man mehr Aufwand treiben.
vielen Dank, ich schaue mir das morgen auf Arbeit mal an und berichte 19
Mal abgesehen davon, dass das nicht klappen wird. Du hast 80.000 Unter-Ordner in einem Ordner und willst einen dieser Unter-Ordner mit dem Explorer öffnen. Der Name des Ordners ist Dir bekannt. Warum öffnest Du ihn dann nicht einfach direkt, z.B. mit
Code:
Shell "Explorer.exe " & fullPathname, vbNormalFocus
Oder bist Du ein Fan von API Aufrufen?

Oder willst Du nach einem Ordner suchen und Du willst mit Wildcards suchen? Dann musst Du anders vorgehen, da reicht es nicht aus, einfach eine Zeile auszutauschen. Und da musst Du auch die Frage beantworten, was passieren soll, wenn es mehr als einen Treffer gibt.
Moin @all,

@Warkings: Also, ich bin kein "Fan" von API. Mit so einer Schnittstelle arbeiten wir gar nicht. 19  WiCa´s sind nicht erforderlich. Mehrere Treffer wird es nicht geben. Denn, die Ordner sind immer einem Projekt zugeordnet. Und jedes einzelne Projekt hat eine eigene Nr.
Korrektur: es sind tatsächlich doch über 200.000 Ordner. Undecided
Ziel: Auf einem Monitor (im Lager) soll jeden Morgen Excel automatisch starten und die Userform zur Verfügung stehen, um eben einen Ordner suchen zu können. (Die Eingabe kann aber auch in einer Zelle getätigt und via Button gesucht werden. Eine UserForm ist nicht zwingend erforderlich. Das hatte ich nur übernommen, als ich den Code gefunden hatte) Dieser Ordner birgt Infos die Außendienstmitarbeiter, vor Abfahrt zum Kunden, dann abrufen können. Man gibt also z.B. 123456 in die TextBox oder eben Zelle ein, drückt dann den Button und automatisch öffnet sich der Explorer mit dem richtigen Ordner. Alles weitere läuft dann ohne Excel. Excel ist tatsächlich nur die Suchmaschine. Hatte mal probiert einen Ordner direkt vom Explorer aus zu suchen/finden, unter Brücksichtigung nur im direkt übergeordneten Ordner zu suchen, aber das dauerte ewig. Hab nun natürlich die Hoffnung, dass es mit Excel schneller geht, aber ich befürchte nichts Gutes.  Undecided

Ich werde mal im Laufe des Tages all die hier schon geschickten Codeschnipsel einarbeiten. Vielen Dank schon mal dafür Blush
Meine Fragen beantwortest Du nicht wirklich Sad

Und API Calls verwendest Du, Du weisst es nur nicht. Ich spreche also mit einem Fisch 05

Und 200.000 Unterornder in einem Ordner ist schon der falsche Ansatz.

Wie dem auch sei, wenn der Name exakt bekannt ist, muss man nur den Explorer mit dem Verzeichnisnamen öffnen, das könnte man auch mit einen Hyperlink in einer Tabelle erledigen, kein Code notwendig.
(06.01.2022, 10:42)Warkings schrieb: [ -> ]Meine Fragen beantwortest Du nicht wirklich Sad  Schade

Und API Calls verwendest Du, Du weisst es nur nicht. Ich spreche also mit einem Fisch 05

Und 200.000 Unterornder in einem Ordner ist schon der falsche Ansatz. Das ist nun aber so und kann auch nicht geändert werden.

Wie dem auch sei, wenn der Name exakt bekannt ist, muss man nur den Explorer mit dem Verzeichnisnamen öffnen, das könnte man auch mit einen Hyperlink in einer Tabelle erledigen, kein Code notwendig. Auch ne Idee, nur soll der Mitarbeiter nicht in einer Liste die Nr. suchen, sondern diese in einem Feld eingeben können.

Wie schon geschrieben, ich setze mich nachher mal ran und bastle mit Euren Codeschnippslen nen biss rum. Wobei ich vermute, egal wie ich´s mache, der Rechner kochen wird...

Grüße aus dem feuchten Nass... 19
Hallöchen,

ich hatte weiter oben ja schon die Codezeile für einen Hyperlink gepostet.

Einen Hyperlink kann man auch per Formel realisieren, der Anwender gibt in der Zelle den Namen ein und klickt auf die Nachbarzelle mit der Hyperlink-Formel.
Auf dem Blatt blendest Du alle Zellen aus bis auf die beiden, z.B. A1 und B1 und lässt die schön groß erscheinen ...
(06.01.2022, 12:40)schauan schrieb: [ -> ]Hallöchen,

ich hatte weiter oben ja schon die Codezeile für einen Hyperlink gepostet.

Einen Hyperlink kann man auch per Formel realisieren, der Anwender gibt in der Zelle den Namen ein und klickt auf die Nachbarzelle mit der Hyperlink-Formel.
Auf dem Blatt blendest Du alle Zellen aus bis auf die beiden, z.B. A1 und B1 und lässt die schön groß erscheinen ...

Moin,

hatte ich wahrgenommen. Bin nur leider noch nicht dazu gekommen es umzusetzen. Undecided  Ich fuchs mich rein und geb Feedback. 21
Seiten: 1 2