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

Programmabsturz

Programmabsturz
Gerd
Hallo liebe Excel-Freunde!
Ich bitte um Hilfe bei folgendem Problem (längerer Beitrag wegen eingefügter Code-Listings):
In einer UserForm habe ich zahlreiche Schaltflächen untergebracht, um für meine Arbeitsgsruppe den Zugriff auf immer wieder benötigte Excel- und Word-Vorlagen von einer zentralen Plattform aus zu ermöglichen.
Der Aufruf der einzelnen Vorlagen funktioniert zwar, doch stürtz Excel immer wieder mit einer Fehlermeldung ab ("Excel hat ein Problem festgestellt und muss neu gestartet werden!").
Beim Aufruf der "Menü"-Datei (xls) wird sofort folgender Code ausgeführt:
Private Sub Workbook_Activate()
Application.ActiveWindow.WindowState = xlMinimized
LSchB_FiHi.Show
End Sub
Der Code der einzelnen Schaltflächen in der UserForm "LSchB_FiHi" hat der Struktur nach folgenden Code:
Option Explicit
Private Sub ExcelVorlage_Click()
xlsPath = "Vorlage.xls"
Call Excel_Vorlage
End Sub
Private Sub WordVorlage_Click()
dokPath = "Vorlage.dot"
Call Word_Vorlage
End Sub
Private Sub schließen_Click()
Unload Me
Workbooks("Finanzhilfe.xls").Close True
End Sub
Die Routingen "Excel_Vorlage" und "Word_Vorlage" haben folgenden Code:
Sub Excel_Vorlage()
Unload LSchB_FiHi
Dim bExists As Boolean
Dim oWorkbook As Object
' Prüfen ob Datei bereits geöffnet ist
bExists = False
With Application
For Each oWorkbook In .Workbooks
If UCase$(oWorkbook.Name) = xlsPath Then
' Jetzt aktivieren
Windows(oWorkbook.Name).Activate
bExists = True
Exit For
End If
Next
End With
' Mappe neu laden!
If Not bExists Then
On Error Resume Next
Workbooks.Open Filename:=xlsPath, ReadOnly:=False
On Error GoTo 0
End If
End Sub

Sub Word_Vorlage()
Dim WdApp As Object
Dim wdDok As Object
Set WdApp = CreateObject("Word.Application")
WdApp.documents.Add dokPath
WdApp.Visible = True
WdApp.Activate
Set wdDok = Nothing
Set WdApp = Nothing
End Sub
Entdeckt irgendjemand "faulen" Code, der die Excel-Abstürze verursachen könnte?
Vielen Dank im Voraus
Gerd

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Programmabsturz
02.02.2010 14:57:23
Ramses
Hallo
Grundsätzlich auf den ersten Blick OK:
Geh doch mal im Einzeschritt durch und schau wo wann was passiert.
Allenfalls mal alle SP usw. installieren
Gruss Rainer
AW: Programmabsturz
02.02.2010 15:18:02
Gerd
Hallo Rainer!
Vielen Dank für Deine Nachricht. Mit Einzelschritt bin ich nicht weitergekommen. Der Debugger sagt nichts. Excel stürzt einfach nur ab.
Manchmal kann ich mehrere Formulare aufrufen, manchmal stürzt Excel schon beim ersten Aufruf ab. Ich habe es auch an einem anderen Arbeitsplatz ausprobiert mit demselben Ergebnis. Die SPs sind alle drauf. Die Rechner werden zentral von der IT-Abteilung immer auf dem aktuellsten Stand gehalten.
Bin echt ratlos...
Gerd
Anzeige
AW: Programmabsturz
03.02.2010 07:11:18
Gerd
Guten Morgen an alle!
Kann mir wirklich niemand einen Tipp zu meinem Problem geben?
Gerd
AW: Programmabsturz
03.02.2010 07:11:26
Gerd
Guten Morgen an alle!
Kann mir wirklich niemand einen Tipp zu meinem Problem geben?
Gerd
AW: Programmabsturz
03.02.2010 09:50:46
Luschi
Hallo Gerd,
werde mich mal an diesem Phänomen versuchen.
Ein logischer Fehler liegt in dieser Vba-Zeile:
If UCase$(oWorkbook.Name) = xlsPath Then
Dieser Vergleich ergibt immer False und damit ist auch bExists immer auf False gestellt.
Entweder man schreibt:
xlsPath = "VORLAGE.XLS"
oder
If UCase$(oWorkbook.Name) = UCase$(xlsPath) Then
Das ist aber nicht das eigentliche Problem.
Es wäre wichtig zu wissen, ob diese Excel-Abstürze auftreten, wenn gerade Excel-Vorlagen oder Winword-Vorlagen aufgerufen werden. Bei mir treten diese ominösen Fehler (mal Absturz, mal Vba-Fehler) nur auf im Zusammenhang mit Winword-Vorlagen auf.
Man öffnet von Excel aus Winword, schließt aber nicht in Excel dieses Programm sondern setzt nur die Objektvarible auf Nothing: Set WdApp = Nothing. Damit sollte laut Theorie alles ok sein.
Anders geht es ja auch nicht, da WdApp.Quit dem User keine Möglichkeit geben würde, den gerade geöffneten Brief zu speichern/ändern/drucken. Wenn der User dann Winword nicht vollständig beendet sondern nur den Brief schließt, habe ich beim Aufruf der nächsten Winword-Vorlage das beschriebene Problem.
Deshalb prüfe doch mal nach dem Excel-Absturz, ob Winword noch im Speicher vorhanden ist:
Tastenkombination Strg-Alt-Entf - Taskmanager - Prozesse: suche in Liste nach WINWORD.EXE
Mal sehen was bei Dir herauskommt.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Programmabsturz
03.02.2010 10:10:59
Gerd
Hallo Luschi!
Erst einmal vielen Dank dafür, dass Du mir helfen willst.
Die Excel-Abstürze treten immer nur beim Aufruf der Excel-Vorlagen auf (!!!). Beim Öffnen der Word-Vorlagen habe ich das Problem nicht.
Ist echt 'n Phänomen, denn einzeln aufgerufen funktionieren die Vorlagen.
Gruß
Gerd
AW: Programmabsturz
03.02.2010 16:37:26
Luschi
Hallo Gerd,
das macht mich nun doch ein bisschen ratlos. Hast Du Dir meinen 1. Teil (UCase) angesehen.
Auch dies würde ich anders machen:
Windows(oWorkbook.Name).Activate --> oWorkbook.Activate --> oWorkbook.Select
Vielleicht ist die Ursache auch darin zu sehen, daß die Excel-Application am Anfang minimiert wurde und dann eine Arbeitsmappe aktiviert wird ohne Excel selbst wieder sichtbar zu machen.
Rätsel über Rätsel. Auf alle Fälle würde ich ein paar 'On Error Resume Next' deaktivieren wie hier:
On Error Resume Next
Workbooks.Open Filename:=xlsPath, ReadOnly:=False
Viel Spaß beim Testen und
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Programmabsturz
08.02.2010 14:52:59
Gerd
Hallo Luschi!
Möchte doch noch kurz den Thread abschießen.
Ich habe in einer der Vorlagen, die ich mit der zentralen Userform aufrufe, eine "Window"-Anweisung verändert. Auch habe ich Deinen Hinweise mit der UCase$-Anweisung angewandt.
Zumindest läuft es jetzt auf zwei Rechnern problemlos.
Noch einmal vielen Dank!
Gerd

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige