Jump to content

tuduc

Members
  • Gesamte Inhalte

    4
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von tuduc

  1. Hallo an alle,

     

    danke für Eure Ideen.

    Ich habe es jetzt geschafft, siehe unten.

    Funktioniert, weil der Teil der den Unterschied macht immer die ersten 6 Zeichen des Ordnernamens sind

    Wird als prj_n in Dialogbox abgefragt, der Wert für prj_fxx wird in Abhängigkeit von prj_n zugewiesen

     

    VG 

     

    For Each subfolder in fso.GetFolder(prj_fxx).SubFolders
        prj_f = subfolder.name
        prj_f6 = left(prj_f, 6)
        if prj_f6 = prj_n Then
            prj_path = prj_fxx &"\" & prj_f
            Exit For
        end if
    Next
    Set WSHShell = WScript.CreateObject("WScript.Shell") 
    WshShell.run ("explorer.exe " & prj_path)

     

     

  2. vor einer Stunde schrieb NilsK:

    Moin,

     

    dann wäre es sinnvoll, wenn du uns auch das schreibst, was Sache ist. Diese beiden Aussagen hier widersprechen sich nämlich:

     

    Eine dieser Aussagen kann also nicht stimmen.

     

    Am Ende bleibt es aber dabei: Wenn du das per VBS lösen willst, dann musst du auch die Methoden einsetzen, die VBS dafür hat. Welche das sind, habe ich oben angegeben.

     

    Gruß, Nils

     

    Hallo Nils,

     

    aktuell mit VBS endet der Pfad auf 6 Zahlen, damit erreiche ich aber nicht die Ordner, an die die Kollegen hinter die Projektnummer noch den Kundennamen setzen.

    Deshalb suche ich die Lösung mit Wildcards.

    In VBA geht das mit "dir".

  3. Am 9.2.2021 um 18:24 schrieb daabm:

    Nein. Die entscheidenden Zeilen wären die, die jhx_path_all zusammenbauen :-)

    Wenn es _unbedingt_ VBS sein soll, kommst Du um ein FileSystemObject nicht herum. In Powershell wäre das fast ein Einzeiler...

    Hallo Martin, ich muß Dir zum Teil widersprechen. jhx_path_all beinhaltet eine Wildcard am Ende.

    Also benötige ich entweder eine Alternative zu den meiner Meinung nach entscheidenden Zeilen, die mit Wildcards umgehen kann.

    Oder ich benötige vorab einen Befehl der unter Verwendung von Wildcards den Ordner "nur" findet, den ganzen Namen dann an die oben genannten Zeilen übergibt. 

  4. Hallo in die Runde,

     

    es geht um folgendes.

    In einem Verzeichnis liegen Ordner, die alle mit 6 Ziffern anfangen.

    Diese 6 Ziffern sind eindeutig, ein bestimmter Ordner ist über diese 6 Ziffern eindeutig zu identifizieren.

    Leider folgt aber auf diese 6 Ziffer manchmal noch ein Textteil.

    123456

    123457_Max

    123458_Peter

    123459

    ...

    Ich habe ein VBS Script, mit dem ich nach Eingabe der 6 Ziffern den Ordner im Explorer angezeigt bekomme (geöffnet, so daß ich Zugriff auf die darin enthaltenen Dateien und Ordner habe).

    Die entscheidende Zeilen in dem Script sind.

    "Set WSHShell = WScript.CreateObject("WScript.Shell") 
        WshShell.run ("explorer.exe " & jhx_path_all)"

    jhx_path_all hat z.B. den Inhalt "\\SERVERNAME\ordner_2010\monat_05\Projekte_2034xx\203456", wird abhängig von den eingegebenen 6 Ziffern zusammengesetzt. 

    Dieses Script funktioniert natürlich nur, wenn der finale Ordner nur aus den 6 Ziffern besteht.

    Wenn aber, wie oben z.B. noch "_Max" oder "_Peter" dahintersteht, dann eben nicht.

    Genau für diesen Fall hoffe ich hier auf eine Lösung.

    In VBA(Excel) habe ich das gelöst, in VBS komme ich nicht weiter:

     

    VG

×
×
  • Neu erstellen...