Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
792to796
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
792to796
792to796
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
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

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
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

200 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige