Excel-2003-Update verursacht plötzlich VBA-Laufzeitfehler

12/09/2008 - 19:41 von Jörg Eisenträger | Report spam
Hallo,
bisher hatten folgende Zeilen stets anstandslos funktioniert:

Dim sht as Object
For each sht in ActiveWorkbook.Sheets
If sht.Name = "MySheet" then
'tue irgend etwas
End If
Next

Seit dem Update auf Excel 2003 (11.8220.8221) SP3 - muss erst vor kurzem
gewesen sein - bleibt das Makro in der IF-Zeile mit dem Laufzeitfehler
57121 hàngen (anwendungs- oder objektorientierter Fehler).

Es sei dahin gestellt, ob es klug war, früher die Variable sht als
Objekt zu deklarieren. Es hatte jedenfalls nicht gestört. Seit der Build
8221 funktioniert das Makro nur noch, wenn sht als Worksheet (vielleicht
auch Sheet) deklariert wird.

Woran liegt das? Was wurde hier upgedatet?
Gibt es evtl. weitere bekannte derartige Inkompatibilitàten?

Wenn ich daran denke, dass meine Makros mal unter XL 2007 laufen sollen,
wird mir richtig schlecht.


Gruß
Jörg
LPs auf CD brennen - so geht's: http://www.joergei.de/
E-Mail-Adresse existiert, wird aber nicht gelesen.
 

Lesen sie die antworten

#1 Thomas Ramel
12/09/2008 - 20:21 | Warnen spam
Grüezi Jörg

Jörg Eisentràger schrieb am 12.09.2008

Dim sht as Object
For each sht in ActiveWorkbook.Sheets
If sht.Name = "MySheet" then
'tue irgend etwas
End If
Next

Seit dem Update auf Excel 2003 (11.8220.8221) SP3 - muss erst vor kurzem
gewesen sein - bleibt das Makro in der IF-Zeile mit dem Laufzeitfehler
57121 hàngen (anwendungs- oder objektorientierter Fehler).



Das ist eigenartig und sollte IMO nichts mit einem Update oder àhnlichem zu
tun haben.

Es sei dahin gestellt, ob es klug war, früher die Variable sht als
Objekt zu deklarieren. Es hatte jedenfalls nicht gestört.



Wenn du auch Diagramm-Blàtter in die Prüfung mit einbeziehen willst ist das
die einzige Möglichkeit diese ebenfalls zu erfassen.

Seit der Build 8221 funktioniert das Makro nur noch, wenn sht als Worksheet
(vielleicht auch Sheet) deklariert wird.



Ja wie denn nun - das eine oder das andere?

Woran liegt das? Was wurde hier upgedatet?
Gibt es evtl. weitere bekannte derartige Inkompatibilitàten?



Prüfe mal im VBA-Editor unter Extras/Verweise ob es Eintràge mit 'Nicht
gefunden' gibt und korrigiere/lösche diese gegebenenfalls.

Teste dann noch mal ob das Makro nun durchlàuft

Wenn ich daran denke, dass meine Makros mal unter XL 2007 laufen sollen,
wird mir richtig schlecht.



Soooo arg ist es denn auch wieder nicht... ;-)



Mit freundlichen Grüssen
Thomas Ramel

- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-3]
Microsoft Excel - Die ExpertenTipps

Ähnliche fragen