In Excel gibt es die Möglichkeit, in einer bestimmten Tabelle, mit GeheZu, Inhalte auswählen .. Formeln, Fehler
alle Zellen mit Fehler auszuwählen.
Ich versuche, eine Funktion zu erstellen, der ich als String einen bestimmten Tabellennamen übergebe und die mir dann die betroffenen Zellen (mit Fehlerwerten) als String zurückgibt.
Selection.SpecialCells(xlCellTypeFormulas, 16) habe ich mit dem Makrorecorder aufgezeichnet. Ich komme damit jedoch nicht zum Ziel. Es klappt nur, wenn ich die Funktion für die aktive Tabelle auswähle. Ist ja auch klar, da in meinem Code auch Selection steht und das ist sicher für eine Abfrage in einer nicht selektierten Tabelle ein "no go". Ich habe jedoch nicht herausgefunden, wie ich ohne Selection zum Ziel komme.
Muss ich von dieser SpecialCells-Methode Abstand nehmen und beispielweise die einzelnen Zellen von UsedRange einer bestimmten Tabelle abarbeiten?
Kann mir jemand weiterhelfen?
Danke und Gruss, Peter
https://www.herber.de/bbs/user/84498.xlsm
Option Explicit
Sub xxx1()
Debug.Print xFehler("Tabelle1")
MsgBox xFehler
End Sub
Sub xxx2()
Debug.Print xFehler("Tabelle2")
MsgBox xFehler
End Sub
Public Function xFehler(strTab As String)
Dim WS As Worksheet, RNG As Range
Set WS = Worksheets(strTab)
Set RNG = Selection.SpecialCells(xlCellTypeFormulas, 16)
xFehler = RNG.Address(0, 0)
End Function