Autor: Peter Haserodt  --- Aus Excel Standard - Gruppe: Tutorials

Groß - Klein in Funktionen

Autor: Peter Haserodt - Erstellt: ?      - Letzte Revision: ?
Groß - Kleinschreibung Vergleiche - in Excel primär CaseInSensitiv

Vorab:
CaseSensitiv
bedeutet: Groß-Kleinschreibung wird beachtet, also ein a ist ungleich A
CaseInSensitiv
bedeutet: Groß-Kleinschreibung wird nicht beachtet, also ein a ist gleich A

Immer wieder gibt es Fragen bei Funktionen, warum die nicht so funktionieren wie man glaubt, wenn es um Groß-Kleinschreibung geht.
Dabei ist das wirklich einfach:

Die meisten Funktionen von Excel unterscheiden nicht nach Groß-Kleinschreibung - und das ist gut so.

Stellen Sie sich vor, Sie suchen in einer Liste nach dem Wort Haus.
Nun gibt es Anwender, die schreiben mal Haus, haus,hAus oder was weiß ich.
Schon müßte ich mir irgendetwas ausdenken, wie ich diese Schreibweisen alle unter einen Hut bringe.
Die Richtigkeit der Aussage kann man sehr leicht überprüfen:

 
 ABCDE
1     
2 aAWAHR 
3 HaushAusWAHR 
4     
Formeln der Tabelle
D2 : =B2=C2
D3 : =B3=C3
 

oder:
 
 ABC
1   
2 Haus 
3 hAus 
4 haUs 
5 HAUS 
6   
7 4 
8   
Formeln der Tabelle
B7 : =ZÄHLENWENN(B2:B5;"haus")
 


Der Irrtum mit Zeichen()

Die Funktion Zeichen() gibt das zugehörige Zeichen zu einem ASCII zurück.
Bsp.:
 
 ABCD
1    
2 Aa 
3    
Formeln der Tabelle
B2 : =ZEICHEN(65)
C2 : =ZEICHEN(97)
 
Tatsächlich wundert sich kein Mensch, dass
 
 ABCDE
1     
2 u 5 
3 U 5 
4 U   
5 u   
6 u   
7     
Formeln der Tabelle
D2 : =ZÄHLENWENN(B2:B6;"u")
D3 : =ZÄHLENWENN(B2:B6;"U")
 
Die Anzahl aller u's und U's zurückgibt.
Jetzt gibt es die Idee, um nur ein kleines u zu zählen, die Funktion Zeichen einzusetzen.

Also in der Art:

=ZÄHLENWENN(B2:B6;ZEICHEN(117))
(117 stegt für das kleine u)


Und nun wundert sich vielleicht mancher, dass dabei auch wieder 5 herauskommt und könnte denken, ZählenWenn rechnet falsch.

Das ist natürlich absurd.
Zeichen(117) ergibt doch u. Also ist es genauso, als hätte ich:

=ZÄHLENWENN(B2:B6;"u")

geschrieben.

Und damit sind wir wieder beim obigen Beispiel.
Ich vergleiche doch nicht die Zahl sondern das daraus resultierende Zeichen !!!

Möglichkeiten um das U-Problem zu behandeln:
 
 ABCDEF
1      
2 u 22U
3 U 33u
4 U    
5 u    
6 u    
7      
Formeln der Tabelle
D2 : {=SUMME((CODE(B2:B6)=85)*1)}
E2 : =SUMMENPRODUKT((CODE(B2:B6)=85)*1)
D3 : {=SUMME((CODE(B2:B6)=117)*1)}
E3 : =SUMMENPRODUKT((CODE(B2:B6)=117)*1)

Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Es gibt derer sicherlich viele.
Aber Grundlage ist:
Ich darf nicht das Zeichen vergleichen sondern den dazugehörigen ASCII also den umgekehrten Weg.
Die Funktion Code() ist die Gegenfunktion zu Zeichen.
Code("u") liefert mir also 117. Und dies kann ich nun wunderbar gegen 117 vergleichen und zählen.

Alternativ könnte ich auch mit einer Hilfsspalte arbeiten:
 
 ABCDEFG
1       
2 u117 2U 
3 U85 3u 
4 U85    
5 u117    
6 u117    
7       
Formeln der Tabelle
C2 : =CODE(B2)
E2 : =ZÄHLENWENN(C2:C6;85)
C3 : =CODE(B3)
E3 : =ZÄHLENWENN(C2:C6;117)
C4 : =CODE(B4)
C5 : =CODE(B5)
C6 : =CODE(B6)
 
Und dann habe ich wieder mein ZählenWenn()

Funktionen die CaseSensitiv arbeiten sind z.B.
Finden() - Im Gegensatz zu Suchen()
 
 ABCDE
1     
2  FindenSuchen 
3 HausMAus22 
4 HausMAus62 
5     
Formeln der Tabelle
C3 : =FINDEN("a";B3)
D3 : =SUCHEN("a";B3)
C4 : =FINDEN("A";B4)
D4 : =SUCHEN("A";B4)
 
Zum Abschluss:

Excel arbeit primär CaseInSensitiv. Dies muss ich beim Einsatz von Formeln beachten.
Wichtig ist, dass ich mir bei Textfunktionen anschaue, auf welcher Basis diese arbeiten.

Weitere Artikel der Gruppe: Tutorials Aus Excel Standard
Nach oben
ToDo
Google Werbung