schnitzel21m Geschrieben 26. März 2002 Geschrieben 26. März 2002 Ich könnt' kotzen! Wie kann ich in VBA einen File ansprechen, von dem ich den pfad und den anfang weiß, aber nicht den kompletten namen des files? Beispiel: file liegt auf: c:\EARS\ ....der file heißt ears123456789012.txt der file ändert aber täglich seinen namen, um genau zu sein ändert sich nur die zahlenfolge! es gibt ja eine funktion mid(file x, z)...aber ich muß den file doch erst ma ansprechen!!! nur wie, wenn ich nicht weiß, wie der genau heißt!? helft ma bitte Zitieren
robotto7831a Geschrieben 26. März 2002 Geschrieben 26. März 2002 Hallo, ändert sich der Dateiname willkürlich oder gibt es dafür eine Regel? Frank Zitieren
schnitzel21m Geschrieben 26. März 2002 Autor Geschrieben 26. März 2002 das script soll ma am server laufen...täglich! täglich kommen neue files von der sorte auf das laufwerk dass in meinem beispiel halt c ist! die zahlen sollen ein datum mit einer id darstellen! eine regel in dem sinne gibt es nicht! ich will den file quasie variabel ansprechen, un dann verschieben un umbenennen-> dafür muß ich aber den namen irgenwie wisse! die ******e is ja, das es in vba keine platzhalter gibt! sonst hätt man ja einfach ears*.txt sagen können! achso: doch der Filename fängt immer mit ears... an! und es ist immer ein txt-file! soviel zur regel! also? Zitieren
duderino Geschrieben 26. März 2002 Geschrieben 26. März 2002 du deklarierst in deiner Funktion erstmal drei Variablen vom Typ Object oder auch Variant, und noch ein String-Variable für den Pfad deiner Datei mit einer Variable wird per CreateObject ein neues FileSystemObject erzeugt. Das wiederum kann dann eben z.B. einen Dateiordner oder eine Datei selber erstellen: dim fso as Object, folder as Object, file as Object dim dasisse as String Set fso = CreateObject("Scripting.FileSystemObject") set folder = fso.GetFolder("<hier der Pfad zum Ordner!>") jetzt haste deinen Ordner und kannst dann jede Datei, die sich darin befindet, ansprechen, also z.B: For Each file in folder.Files If instr(1, file.Name, "ear") > 0 Then dasisse = file.Path End If Next file Jetzt hast du, voraussgesetzt die Datei is wirklich eindeutig z.B. über die ersten paar Buchstaben des Namens zu identifizieren, den Pfad(+Namen) gespeichert und kannst mit ihr anstellen was immer dir möglich ist klappts? soweit, duderino Zitieren
robotto7831a Geschrieben 26. März 2002 Geschrieben 26. März 2002 Schau mal in die VB Hilfe. Es gibt bestimmt irgendwie sowas wie Dateien in einem Verzeichnis anzeigen lassen und dann diese Dateien als Variable zurückzugeben an die Funktion. So könntest Du an deine Datei kommen. Sonst hab ich im Moment auch keine Ideen. Frank Zitieren
schnitzel21m Geschrieben 26. März 2002 Autor Geschrieben 26. März 2002 habt dank, habs schon gelöst! so ähnlich wie auch dein vorschlag war... für alle die's interessiert: hab den pfad angegeben un dann mit der mid-funktion nach solchen dateien gesucht! mit ner schleife noch schön ausgeschmückt un jetzt rennt das ding wie die sau! gruß, schnitzel Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.