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

Forumthread: Workbook_Open unterdrücken durch VBA

Workbook_Open unterdrücken durch VBA
17.08.2006 11:05:06
stefanseevetal
Hallo!
Ich habe immer noch ein Problem mit meinen WorkBook_Open-Befehl. Nun habe ich rausgefunden, dass meine Anweisungen in

Private Sub Workbook_Open ()
End Sub

korrekt ausgeführt werden, wenn ich die Datei direkt öffne. Wenn ich die Datei über einen Button in einer anderen Datei öffne, funzt es aber nicht mehr und es kommt die Fehlermeldung, dass die Select-Methode des Range-Objekts nicht ausgeführt werden konnte. Hier mein Beispiel:
Datei: "Schaden.xls". Code in: "Diese Arbeitsmappe"

Private Sub Workbook_Open()
Dim wks As Worksheet
Set wks = ThisWorkbook.Worksheets("Schadensmeldung")
wks.Activate
wks.UsedRange.Select
ActiveWindow.Zoom = True
End Sub

Ich öffne diese Datei durch einen Button (in einer anderen Datei), bei dem folgender Code hinterlegt ist:
Sub zuSchaden()
Dim spfad as String
spfad = ThisWorkbook.Path & "\Schaden.xls"
If DateiGeoeffnet(spfad) = True Then
Windows("Schaden.xls").Activate
Else
Workbooks.Open Filename:=ThisWorkbook.Path & "\Schaden.xls"
End If
(Die Funktion DateiGeoeffnet funktioniert ewinwandfrei, ich habe sie deshalb nicht hier zugeschrieben)
Ich dachte immer, dass die Anweisungen in

Private Sub Workbook_Open()
End Sub

in der Datei Schaden.xls auch ganz normal ausgeführt werden, wenn ich, wie oben gezeigt, per Button aus einer anderen Datei öffnen möchte. Aber scheinbar, gibt es da doch einen Unterschied. Was muss ich machen, damit es korrekt funktioniert? Kann ich die Prozedur

Private Sub Workbook_Open()
End Sub

verhindern, wenn ich per Button die Datei öffne und dafür dann den Code mit beim Button hinterlegen?
Danke und Gruß,
Stefan
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Workbook_Open unterdrücken durch VBA
17.08.2006 11:28:40
Matthias
Hallo Stefan,
Kann ich die Prozedur Workbook_Open() verhindern, wenn ich per Button die Datei öffne und dafür dann den Code mit beim Button hinterlegen?
Falls es hilft, das ginge so (ungetestet):

Sub zuSchaden()
Dim spfad As String
spfad = ThisWorkbook.Path & "\Schaden.xls"
If DateiGeoeffnet(spfad) = True Then
Windows("Schaden.xls").Activate
Else
On Error Resume Next
Application.EnableEvents = False
Workbooks.Open Filename:=ThisWorkbook.Path & "\Schaden.xls"
If Err.Number > 0 Then _
MsgBox Err.Description, vbCritical, "Fehler " & Err.Number
Else
On Error GoTo 0
ActiveWorkbook.Worksheets("Schadensmeldung").Activate
ActiveSheet.UsedRange.Select
ActiveWindow.Zoom = True
End If
On Error GoTo 0
Application.EnableEvents = True
End If
End Sub

Gruß Matthias
Anzeige
AW: Workbook_Open unterdrücken durch VBA
17.08.2006 11:37:45
stefanseevetal
Hallo Matthias,
vielen Dank für die Hilfe! Jetzt funktioniert es zumindest so! Aber kannst Du mir mal generell sagen, warum dieses Problem besteht? Ich meine, ist es normal, dass die Workbook_Open-Anweisungen beim Öffnen einer Datei über einen Button nicht korrekt ausgeführt werden kann?
Danek und Gruß,
Stefan
Anzeige
AW: Workbook_Open unterdrücken durch VBA
17.08.2006 11:46:01
Matthias
Hallo Stefan,
den Fehler konnte ich nicht nachvollziehen, bei mir lief das einwandfrei.
Meist ist eine unkorrekte Referenzierung schuld, was bei dir aber nicht der Fall ist.
Es könnte auch daran liegen, dass die "TakeFocusOnClick"-Eigenschaft des CommandButtons auf True steht, das führt oft zu Fehlern bei den Makros, wenn Select verwendet wird.
Gruß Matthias
Anzeige
Danke
17.08.2006 12:48:48
stefanseevetal
Hallo Matthias,
Danke für Deine Antwort. Leider habe ich den Fehler immer noch nicht gefunden. Die "TakeFocusOnClick"-Eigenschaft war es leider auch nicht. Aber ich teste weiter.
Gruß,
Stefan
AW: Workbook_Open unterdrücken durch VBA
17.08.2006 11:35:11
RolfK
Hallo Stefan,
füge einfach die folgende Anweisung nach dem .open wie folgt ein.
Workbooks.Open Filename:=ThisWorkbook.Path & "\Schaden.xls"
ActiveWorkbook.RunAutoMacros xlAutoOpen
Dann müsste es funktionieren.
mfg Rolf
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