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

VBA Code ergänzen

Forumthread: VBA Code ergänzen

VBA Code ergänzen
12.05.2006 20:09:06
elima
Hallo
Ich verwende diese VBA Routine um beim öffnen einer ExcelDatei eine zweite ExcelDatei automatisch mitzuöffnen.

Private Sub Workbook_Open()
Workbooks.Open Filename:="D:\Meine Datei\Data\Archiv.xls"
End Sub

Möchte jetzt gerne hinzufügen, "wenn Datei bereits offen dann nicht öffnen".
Kann mir hier jemand weiter helfen wie das geht.
Vielen Dank
elima
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Code ergänzen
12.05.2006 20:19:51
KlausL
Hallo Elima,
im Archiv habe ich diese Lösung gefunden
Gruß KlausL

Sub offen()
Dim i
For i = 1 To Workbooks.Count
If Workbooks(i).Name = "Test.xls" Then
MsgBox "Datei ist offen"
Exit Sub
End If
Next i
Workbooks.Open "C:\DateiPfad\Test.xls"
End Sub

Anzeige
AW: VBA Code ergänzen
12.05.2006 20:48:58
elima
Hallo KlausL
Irgendwie komme ich damit nicht zurecht.
Die Zweite Datei wird jetzt überhaupt nicht mehr geöffnet.
Gruß, elima
AW: VBA Code ergänzen
12.05.2006 21:55:26
Josef
Hallo Elima!
Probier's so!
Private Sub Workbook_Open()
Dim objWB As Workbook
Const strFile = "D:\Meine Datei\Data\Archiv.xls"

For Each objWB In Application.Workbooks
  If objWB.FullName = strFile Then Exit Sub
Next

Workbooks.Open Filename:=strFile

End Sub



'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: VBA Code ergänzen
13.05.2006 08:48:27
elima
Hallo Sepp.
Vielen Dank, genau das war es wonach ich suchte.
Du hast mir wieder sehr geholfen.
Gruß, elima
AW: VBA Code ergänzen
13.05.2006 10:44:14
Erich
Hallo Elima,
noch ein Vorschlag:
Option Explicit
Private Sub Workbook_Open()
Dim strKurz As String, objWB As Workbook
Const strFile = "D:\Meine Datei\Data\Archiv.xls"
strKurz = UCase(Right(strFile, Len(strFile) - InStrRev(strFile, "\")))
For Each objWB In Workbooks
If UCase(objWB.Name) = strKurz Then Exit Sub
Next
Workbooks.Open Filename:=strFile
End Sub
Wenn eine Mappe Test.xls bereits geöffnet ist, kann Excel Mappen mit den Namen test.xls, TEST.XLS, TEst.xls usw. nicht öffnen (auch wenn sie in einem anderen Verzeichniss stehen). Daher ist das UCase nötig.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
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