Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1560to1564
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ordnername variabel gestallten

Ordnername variabel gestallten
25.05.2017 18:32:30
Igor
Liebe Forengemeinde,
ich hätte folgendes Problem und würde mich über Tipps freuen:
Ich möchte mit einer Excel datei eine andere öffnen.
Der Auszug vom folgendem Code funktioniert auch soweit:

Prafix = "AX 875 - Lenovo" & "\6-Test\"
Pfad = ThisWorkbook.Path & "\..\" & Prafix
Dateiname = Dir(Pfad & "875AX Lenovo.xlsm")
Set wb2 = Workbooks.Open(Pfad & Dateiname)

Im nächsten Schritt möchte ich dies variabel gestallten und aus mehreren Ordner Dateien öffnen. Dabei ist "AX"-> immer vorhanden "875"-> variabel und "-Lenovo" immer unterschiedlich.
Ich möchte aber das die Datei im Ordner lediglich nach "AX 875" gesucht wird und was danach steht egal ist.
Meine Überlegung waren :
Prafix = "AX " & m & " - " & "*?*" & "\6-Test\" 

m als integer und mit schliefe hochzählen. Ich scheiter aber an dem "*?*".
Kann mir jemand hier ein Tipp geben?
Vielen Dank und Gruß
Igor

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordnername variabel gestallten
25.05.2017 19:49:02
onur
Du kannst nicht gleichzeitig mehrere Dateien öffnen - erst recht nicht auch noch mehrere mit gleichem Namen.
Wie stellst du dir das denn vor?
AW: Ordnername variabel gestallten
25.05.2017 22:33:21
Igor
Sorry, ich möchte nacheinander Datei öffnen und Daten in eine Liste kopieren mit einer Schleife.
AW: Ordnername variabel gestallten
25.05.2017 20:08:44
Sepp
Hallo Igor,
ungetestet!
Sub test()
Dim strFile As String, strPath As String, strPrefix As String
Dim lngIndex As Long

For lngIndex = 1 To 1000
  strPath = ThisWorkbook.Path & "\..\" & "AX " & CStr(lngIndex) & " - Lenovo" & "\6-Test\"
  strFile = Dir(strPath & CStr(lngIndex) & "AX*.xlsm", vbNormal)
  If strFile <> "" Then
    MsgBox strFile
    'Workbooks.Open(strfile)
  End If
Next

End Sub

Gruß Sepp

Anzeige
AW: Ordnername variabel gestallten
25.05.2017 22:41:41
Igor
Danke für die Hilfe, aber mein Problem ist, dass der Teil des Ordnernamens " - Lenovo" & "\6-Test\" unterschiedlich ist.
z.b.:
Ordner1: \AX 875 - Lenovo\6-Test\875AX Lenovo.xlsm
Ordner2: \AX 876 - Sony \6-Test\876AX Sony.xlsm
Ordner3: \AX 877 - Audi \6-Test\877AX Audi.xlsm
Und ich möchte jede einzelne Datei nacheinander öffnen daten kopieren,einfügen, datei schließen. Dabei soll nur "AX & Nummer" das entscheidende Öffnungskriterium sein.
Gruß
Igor
In dem Fall könntest...
26.05.2017 10:21:13
Case
Hallo, :-)
... Du mit der API-Funktion "SearchTreeForFile" arbeiten: ;-)
Datei suchen - Pfad unbekannt - auslesen - kopieren...
Das ist jetzt keine Komplettlösung für dich, aber ein Ansatz. ;-)
Bei "SearchTreeForFile" kannst Du auch nur Teile eines Dateinamens vorgeben.
Das Rootlaufwerk würde ich nicht angeben - da kann das finden der Datei eventuell etwas länger dauern. Nimm einfach den Ordner über den mit den Dateien drin.
Servus
Case

Anzeige
AW: Case: genial! Danke
26.05.2017 21:18:41
Fennek
Hallo Case,
vielen Dank für diesen Code!
Für mein Level sind API's recht schwer nachzuvollziehen und nicht selbst zu entwickeln.
Deinen Code konnte ich aber erfolgreich testen und er ist eine Bereicherung.
Vielen Dank
mfg
AW: Case: genial! Danke
26.05.2017 23:34:05
Igor
Auch von meiner Seite ein Dankeschön. Allerdings tue ich mich mit dem Code recht schwer und probiere eine andere Idee.
Ich lese erstmal alle ordnernamen in eine zelle, welche ich später verwende um die ordner zu öffnen.
Mal schauen.
Danke & Gruß
Igor

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige