ich habe eine Datei mit 6 Tabellen und möchte vor dem Speichern prüfen, ob in einer der Tabellen noch ein Fehlerwert enthalten ist. Wenn ja, soll eine Msgbox ausgegeben werden, die mir sagt, in welcher Tabelle (Angabe des Tabellennamens) wie viele Fehlerwerte auftauchen. Dazu habe ich bereits folgenden Code geschrieben:
Sub Fehler_hervorheben()
Dim ws As Worksheet 'Referenz auf ein Worksheet
Dim sheetNr As Long 'Nummer des aktuellen Sheets
Dim c As Range
Dim Zähler As Integer
For sheetNr = 1 To Worksheets.Count
Set ws = Worksheets(sheetNr)
Zähler = 0
For Each c In Worksheets(sheetNr).UsedRange
If IsError(c) Then Zähler = Zähler + 1
Next c
Next sheetNr
MsgBox Worksheets(1).Name & ": " & Zähler & vbLf & _
Worksheets(2).Name & ": " & Zähler & vbLf & _
Worksheets(3).Name & ": " & Zähler & vbLf & _
Worksheets(4).Name & ": " & Zähler & vbLf & _
Worksheets(5).Name & ": " & Zähler & vbLf & _
Worksheets(6).Name & ": " & Zähler
End Sub
Probleme:1
In der Msgbox werden zwar die Blattnamen alle richtig angegeben, aber natürlich immer derselbe Fehleranzahlwert; nämlich der von der letzten Tabelle, da ich einfach nicht weiß, wie ich es anstellen soll, dass er sich den Zählerwert von jeder einzelnen Tabelle merkt.
2
Dumm ist auch, dass ich in der MsgBox die Namen der Tabellenblätter hart mit 1-6 angebe. Wenn ein 7. Blatt hinzukommt, dürfte es nicht mehr funktionieren. Wie kann ich auch das variabel halten?
Vielen Dank und beste Grüße
Andrea