TYP()
363
TYP()
TYPE()
SyntaxTYP(We rt)
DefinitionDiese Funktion gibt eine Zahl zurück, die den Datentyp des angegebenen Arguments charak-
terisiert.
ArgumenteWe rt (erforderlich) ist ein beliebiger Ausdruck (Zahl, Text, Formel ohne Gleichheitszeichen,
Wahrheitswert, Fehlerwert, Bezug oder Name), dessen Typ Sie prüfen möchten.
HintergrundDiese Funktion steht in engem Zusammenhang zu den sogenannten IST-Funktionen, die in
Abhängigkeit des Arguments einen Wahrheitswert über dieses Argument zurückgeben. Sie
findet häufig ihre Anwendung in Zusammenspiel mit der WENN()-Funktion, um in Abhän-
gigkeit der aufgetretenen Situation in Anzeige und Berechnung zu verzweigen. Auch
bedingte Formatierungen und Gültigkeitsregeln können auf dem Rückgabewert aufbauen.
Um die Funktion einzusetzen, ist die Kenntnis der Zuordnung aus Tabelle 10.5 notwendig.
Tabelle 10.5
Die Überset-
zung der
Zahlen in die
ihnen ent-
sprechenden
Typen
Mit Ausnahme des letzten Typs können Sie die anderen Ergebnisse durch Einsatz der Funk-
tionen ISTZAHL(), ISTTEXT(), ISTKTEXT(), ISTLOG(), ISTFEHLER() nachbilden. So
haben
ISTZAHL(B12)
und
TYP(B12) = 1
den gleichen Wahrheitswert.
Es gibt aber einige IST-Funktionen, die mit TYP() nicht erfasst werden (ISTLEER(),
ISTNV(), ISTBEZUG()). Da ISTFEHL() im Falle von #NV keinen Fehler erkennt, gehört
auch diese Funktion in die genannte Gruppe.
TippStehen Sie vor der Wahl, für eine Verzweigung (WENN()-Funktion, bedingte Formatierung) TYP() zu
nehmen oder aber eine der IST-Funktionen, kann der Rat nicht allgemein gültig sein. Im Falle der
IST-Funktionen müssen Sie in der WENN()-Funktion nach den IST-Funktionen »schachteln«, im
Falle der TYP()-Funktion »schachteln« Sie nach den Ziffern für den Typ. So entsteht in der
gewünschten Zelle nach
=WENN(ISTFEHLER(F26);"Fehler";WENN(ISTZAHL(F26);"Zahl";WENN(ISTTEXT(F26);"Text")))
die gleiche Information wie nach
=WENN(TYP(F26)=16;"Fehler";WENN(TYP(F26)=1;"Zahl";WENN(TYP(F26)=2;"Text")))
Sicher ist die Lesbarkeit im ersten Fall besser.
Argument Rückgabewert
Zahl 1
Text 2
Wahrheitswert 4
Fehlerwert 16
Matrix 64
Kapitel 10 Informationsfunktionen
364
Leider können Sie TYP() nicht verwenden, um festzustellen, ob eine Zelle eine Formel
enthält. Steht in der Zelle, auf die Sie Bezug nehmen, eine Formel, gibt TYP() den Typ des
Ergebnisses der Formel zurück.
Den Wert 64 erhalten Sie nicht, wenn in der Zelle, auf die Sie Bezug nehmen, eine Matrixformel
steht, sondern wenn Sie einen Bereich als Argument von TYP() angeben und Ihre Eingabe mit der
Ta s t en ko m b i n a t i o n
(Strg)+(Alt)+(¢) abschließen (Matrixformel mit TYP() als Bestandteil).
Praxiseinsatz
IST-Funk-
tionen
nachbilden
Sie können die Beispiele zu den IST-Funktionen in diesem Kapitel auch mithilfe der TYP()-
Funktion formulieren. So lautet die zweite Bedingung
=ISTFEHLER(B3)
im Beispiel aus Abbil-
dung 10.1 (siehe Seite 346) nunmehr
=(TYP(B3)=16)
Auch das Beispiel aus Abbildung 10.5 (siehe Seite 358) lässt sich mit
=WENN(TYP(M42)=2;;L42*M42)
anstelle von
=WENN(ISTTEXT(M42);;L42*M42)
lösen.
Und auch die farbige Kennzeichnung von Zellen mit Wahrheitswerten im Beispiel 2 der IST-
LOG()-Funktion kann für die »roten« Zellen durch
=UND(TYP(G63)=4;G63)
und für die »grünen« durch
=UND(TYP(G63)=4;NICHT(G63))
erfolgen.
Eine benutzer-
definierte
Funktion
einrichten
Wollen Sie häufig Informationen, die sich aus dem Typ eines Werts ergeben, für textliche
Darstellungen nutzen, ist der Griff zu einer benutzerdefinierten Funktion zu empfehlen.
Function TypInWorten(Bereich As Range) As String
Dim var As Variant
var = Bereich.Value
If Not IsEmpty(var) Then
If IsError(var) Then
TypInWorten = "Fehler"
Else
If var = True Or var = False And Not IsEmpty(var) Then
TypInWorten = "Wahrheitswert"
Else
If IsNumeric(var) Then
TypInWorten = "Zahl"
Else
TypInWorten = "Text"
End If
End If
End If
Else
TypInWorten = ""
End If
End Function
Listing 10.2: Diese Funktion erspart Ihnen den wiederholten Einsatz der WENN()-Funktion

Get Microsoft Excel: Formeln & Funktionen - Das Maxibuch, 2., aktualisierte und erweiterte Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.