Problem bei Fehlerabfrage in Excel 2007

06/03/2008 - 11:30 von Manfred | Report spam
Hallo!

Ich habe ein (Kompatibilitàts-)Problem in Excel 2007:
Bei der Fehlerabfrage kommt es in Excel 2007 hàufig zum Fehler Nr. 9,
Index außerhalb des gültigen Bereichs.
Folgendes Beispiel, welches unter Excel 2003 problemlos làuft:

On Error Resume Next
Sheets("Tabelle1").Select
If Err <> 0 Then
m = MsgBox("Das Blatt 'Tabelle1' ist nicht vorhanden",
vbCritical, Firma)
Exit Function
End If

Falls das Blatt 'Tabelle1' existiert, müßte ERR = 0 sein (was es unter
Excel 2003 auch ist). In Excel 2007 ist ERR aber gleich 9!?!
Hat jemand eine Erklàrung dafür?

Vielen Dank!

Manfred
 

Lesen sie die antworten

#1 Reiner Wolff
07/03/2008 - 06:59 | Warnen spam
Moin Manfred,

*Manfred* schrieb:
Ich habe ein (Kompatibilitàts-)Problem in Excel 2007:
Bei der Fehlerabfrage kommt es in Excel 2007 hàufig zum Fehler Nr. 9,
Index außerhalb des gültigen Bereichs.
Folgendes Beispiel, welches unter Excel 2003 problemlos làuft:

On Error Resume Next
Sheets("Tabelle1").Select



Wenn die Funktion TableExists heißt, könntest Du auch folgendes probieren:
str = Worksheets("Tabelle1").Range("A1").Text
Das hàtte den Vorteil, dass das Tabellenblatt nicht ausgewàhlt würde.

If Err <> 0 Then
m = MsgBox("Das Blatt 'Tabelle1' ist nicht vorhanden",
vbCritical, Firma)
Exit Function
End If

Falls das Blatt 'Tabelle1' existiert, müßte ERR = 0 sein (was es unter
Excel 2003 auch ist). In Excel 2007 ist ERR aber gleich 9!?!



Ich habe das gerade ausprobiert. Bei mir tritt der Fehler nicht auf. Bist
Du sicher, dass Du da keinen Schreibfehler drin hattest?

Hat jemand eine Erklàrung dafür?



Nur den offensichtlichen: Der Ausdruck in der Klammer von Sheets() verweist
nicht auf ein existierendes Tabellenblatt (Anführungszeichen vergessen,
Variable hat nicht den richtigen Wert, Schreibfehler, etc.).

Gruß aus Kiel
Reiner
REALITY.SYS is corrupt. Reboot universe? (y/n)

Ähnliche fragen