Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1244to1248
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

Prüfung Datei offen mit variablem Dateinamen

Prüfung Datei offen mit variablem Dateinamen
Jürgen
Hallo Excel-Forum,
ich hoffe ihr könnt mir weiterhelfen. Habe bei meiner Rescherche noch keine Lösung gefunden.
Das Thema als solches ist altbekannt. Excel soll per Makro prüfen, ob eine bestimmte Datei gerade geöffnet ist. So weit so gut. Ich habe aber jetzt das Problem, dass der Dateiname am Ende variiert.
Der Dateityp ist immer der gleiche.
Z.B. heißt die Datei einmal data(1).csv beim nächsten mal data(12).csv.
Ich benötige irgendeine Möglichkeit eine Art "Wildcard" zu benützen ähnlich wie data*.csv.
Folgenden Lösungsansatz habe ich bic jetzt:
If Not IsWorkbookOpen("data.csv") Then
MsgBox "Die Datei ist nicht geöffnet!"
Exit Sub
Else
End If
Welchen Begriff muss ich anstatt "data.csv" benützen.
Bin über jede Hilfe dankbar.
Vielen Dank im Voraus

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 12:29:26
MatthiasG
Hallo Jürgen,
die Funktion "IsWorkbookOpen" ist ja keine eigene Excel-Funktion. Wie wurde die denn realisiert?
Soll denn geprüft werden, ob die Datei in der aktuellen Excel-Instanz geöffnet ist oder ob sie allgemein (evtl. über eine Netzfreigabe) geöffnet und für die Bearbeitung gesperrt ist?
Kommt es vor, dass mehrere Dateien nach deinem Muster (also z.B. data(1).csv und data(12).csv) geöffnet sind? Wie soll die Funktion dann arbeiten?
Gruß Matthias
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 12:47:58
Jürgen
Hallo Matthias,
entschuldige, dass ich mich nicht konkret genug ausgedrückt habe.
Funktion "IsWorkbookOpen" hängt an folgender Funktion:
Function IsWorkbookOpen(strWB As String) As Boolean
On Error Resume Next
IsWorkbookOpen = Not Workbooks(strWB) Is Nothing
End Function
Es ist immer nur eine Datei mit dem namen data***.csv geöffnet.
Kurz zum Hintergrund:
Die Datei ist im Anhang einer Mail. Die Daten hieraus sollen automatisch in die eigentliche Exceldatei
kopiert werden und dann weiterverarbeitet. Die Abfrage, ob die Datei geöffnet ist, soll unterstützend für die Kollegen sein. Sollten sie vergessen haben den Mailanhang vor Verarbeitung zu öffnen erscheint dann der Hinweis.
Eine Möglichkeit aus Excel heraus eine Mail anzuwählen und deren Anhang zu öffnen scheint es nicht zu geben - bzw. habe ich nirgends gefunden.
Kannst Du mir hierbei irgendwie helfen?
Vielen Dank
Jürgen
Anzeige
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 13:04:27
MatthiasG
Hallo Jürgen,
nimm mal folgende Funktion:

Function IsWorkbookOpen(fn As String) As String
Dim wb As Workbook
For Each wb In Application.Workbooks
If UCase(wb.Name) Like UCase(fn) Then
IsWorkbookOpen = wb.Name
Exit Function
Next wb
IsWorkbookOpen = ""
End Function

Dann kannst du diesen Code zur Abfrage benutzen:

Dim fn as string
fn = IsWorkbookOpen("data*.csv")
If fn="" Then
MsgBox "Die Datei ist nicht geöffnet!"
Exit Sub
Else
MsgBox "Die Datei " & fn & " ist geöffnet."
End If

Wenn allerdings mehrere Mappen mit dem angegebenen Muster ("data*.csv") geöffnet sind, wird nur der Name der ersten gefundenen Mappe zurückgegeben. Sollte das nicht ausreichen, muss der Code nochmals umgeschrieben werden.
Gruß Matthias
Anzeige
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 13:07:12
MatthiasG
Hallo Jürgen,
kleine Korrektur:
zwischen "Exit Function" und "Next wb" fehlt noch "End If":

unction IsWorkbookOpen(fn As String) As String
Dim wb As Workbook
For Each wb In Application.Workbooks
If UCase(wb.Name) Like UCase(fn) Then
IsWorkbookOpen = wb.Name
Exit Function
End If
Next wb
IsWorkbookOpen = ""
End Function
Gruß Matthias
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 13:27:48
Jürgen
Hallo Matthias,
vielen Dank für Deine Hilfe.
Dein Vorschlag funktioniert prächtig.
Und wieder etwas dazugelernt ;-))
Grüße
Jürgen
AW: Prüfung Datei offen mit variablem Dateinamen
12.01.2012 13:30:01
MatthiasG
Hallo Jürgen,
freut mich, dass ich helfen konnte :-)
Gruß Matthias
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige