Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datei öffnen Dialog

Datei öffnen Dialog
06.03.2016 10:41:52
Ingo
Hallo
Ich habe hier ein Makro (mit dem Markrorecorder erstellt), welches eine Datei mit dem Namen "logs" offnet bzw. imortiert.
Der erste Teil des Makros, der dafür zuständig ist lautet so:
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\Temp\logs", Destination:=Range("$A$1"))
.Name = "logs."
Nun würde ich es gerne so einrichten, dass eine Datei geöffnet wird, dessen Dateinamen mit "access.log" beginnt. Also egal, was dahinter noch für Zeichen kommen im Dateinamen.
Es soll also die Datei geöffnet werden, egal, ob Sie
access.log.09.7
access.log.04.6
access.log.05.8
heißt.
Falls mehrere Dateien im Ordner sind, auf die das zutrifft, soll einfach die erste verwendet werden.
Ist das vom Prinzip her grundsätzlich überhaupt machbar?
Oder erfordert das eher einen großen Aufwand beim Coden?
Falls es doch zu Aufwendig ist, kommt auch eine andere Lösung für mich in Frage.
Und zwar, dass sich beim Makro-Start einfach ein Datei-Öffnen-Dialog im Temp-Ordner öffnet und ich die Datei dort dann auswähle.
Gruß
Ingo

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei öffnen Dialog
06.03.2016 11:01:45
Oberschlumpf
Hi Ingo
versuch mal das hier (ungetestet, weil keine Bsp-Datei verfügbar):

Dim lstrFile As String
lstrFile = Application.GetOpenFilename("all Files (*.*), *.*")
If lstrFile = "Falsch" Then Exit Sub
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & lstrFile, Destination:=Range("$A$ _
1"))
.Name = "logs."
'ab hier dein restlicher Code

Es öffnet sich der Datei-Öffnen-Dialog
Du wechselst in das gewünschte Verzeichnis + wählst die gewünschte Datei aus.
Der Pfad + Dateiname wird dann in der Variablen lstrFile an deinen Import-Code übergeben.
So ist der Code nun dynamisch einsetzbar und nicht mehr auf nur eine bestimmte Datei fixiert.
Hilfts?
Ciao
Thorsten

Anzeige
AW: Datei öffnen Dialog
06.03.2016 11:19:50
Ingo
Hallo Thorsten
Ich habe das gerade eben schon probiert.
Es öffnet sich auch der "Datei öffnen" Dialog.
Nach Auswahl der Datei und Klick auf "öffnen" kommt eine Fehlermeldung:
Laufzeitfehler '1004':
Die Methode 'Range' für das Objekt '_Global' ist fehlgeschlagen
Und diese Zeile wird gelb markiert:
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & lstrFile, Destination:=Range("$A$ 1"))
Gruß
Ingo

Anzeige
AW: Datei öffnen Dialog
06.03.2016 11:37:18
Ingo
Kann man darin noch unterbringen, dass mir im Datei-Öffnen-Dialog immer das Verzeichnis C:\Temp angeboten wird?

AW: Datei öffnen Dialog
06.03.2016 11:41:48
Oberschlumpf
dann so:

Dim lstrFile As String
ChDrive "c"
ChDir "c:\temp"
...der restliche Code

Hilfts?

AW: Datei öffnen Dialog
06.03.2016 11:42:25
Ingo
Danke Dir :-)

Anzeige
AW: Datei öffnen Dialog
06.03.2016 11:42:00
Ingo
Habs grad schon hinbekommen mit:
ChDrive ("C:\")
ChDir ("C:\Temp\")

schön...gut so!...owT
06.03.2016 11:42:36
Oberschlumpf

AW: Datei öffnen Dialog
06.03.2016 11:23:01
Ingo
Hallo
Entschuldige, war mein Fehler.
Nun klappt es wunderbar.
Hatte ein Leerzeichen zu viel drin.
Danke Dir!!!
Gruß
Ingo
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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