Langsam wird es, aber irgendwas ist immer
Bisher hatte ich ja Daten und VBA in einer Datei, aber ich denke besser ist, Daten und VBA zu trennen. Was klappt ist, dass ich die UserForm starte und mit dem Start die Datei mit den Daten geöffnet wird. Hierzu verwende ich
Code:
Workbooks.Open("D:\HiDrive\Dokumente\VBARecht\Daten\Wohn_C").Worksheets("Wohn_C").Activate
in UserForm_Initialize().
Nun soll aber bei einem Wechsel von einer UserForm in eine andere die Datei "Wohn_C" geschlossen und gespeichert werden. In der Onlinehilfe steht ja der Code
Code:
Workbooks("BOOK1.XLS").Close SaveChanges:=False
. Angepasst auf meinen Fall sollte der so aussehen
Code:
Workbooks("D:\HiDrive\Dokumente\VBARecht\Daten\Wohn_C").Worksheets("Wohn_C").Close SaveChanges:=False
. Dachte ich. Nun kommt aber immer der Laufzeitfehler 9.
Über Google habe ich den Beitrag
http://www.herber.de/forum/archiv/1308to...n_vba.html gefunden und mal den Code ausprobiert
Code:
Sub schliessen2()
Dim wb As Workbook, blnOK As Boolean
For Each wb In Workbooks
If LCase(wb.Name) = "test1.xls" Then
MsgBox "Arbeitsmappe Test1.xls ist geöffnet, wird jetzt geschlossen"
wb.Close SaveChanges:=True
blnOK = True
Exit For
End If
Next wb
If Not blnOK Then MsgBox "Arbeitsmappe Test1.xls ist nicht geöffnet"
End Sub
"Test1.xls" habe ich natürlich durch meine Datei ersetzt. Sowohl in der Form "D:\HiDrive\Dokumente\VBARecht\Daten\Wohn_C", "D:\HiDrive\Dokumente\VBARecht\Daten\Wohn_C.xlsx", "Wohn_C.xlsx" und "Wohn_C" probiert und immer sagt mir Excel nur, dass die Datei nicht geöffnet ist. Dem Beitrag entnehme ich nun, dass offenbar mein Projekt beim Schließen die Datei nicht mehr erkennt!? Aber ich werde nicht schlau daraus, wie ich das nun beheben kann!?
Grüße und allseits guten Start ins Wochenende!