„Und wo bist Du gerade?“ „In der Bredouille!“ „Hach, Frankreich, wie schön!“

Och, Leute – nö! Wie oft muss ich es sagen! Und ich sehe es immer wieder! Gestern zu Beispiel:

Wird in VBA deklariert:

Dim strDateiImport, strDateiExport As String

dann ist strDateExport vom Datentyp String, strDateiImport dagegen vm Typ Variant. Und dies kann zu Problemen führen. Beispielsweise beim Befehl Dir, der zwar „“ verarbeiten kann, aber nicht Leer (Null):

Also bitte:

Dim strDateiImport As String, strDateiExport As String

oder:

Dim strDateiImport As String
Dim strDateiExport As String

Umgekehrt: Quizfrage: was liefern folgende Meldungsfenster:

Dim i, j, k As String

i = 12
j = 3
k = “ Excel kann nerven“

MsgBox i & j
MsgBox i + j

MsgBox i + j & k
MsgBox i + j + k

Ich spüre das Tier in mir. Es ist ein kleines Faultier.

Manchmal verblüfft mich Excel. Beziehungsweise Phänomene, die ich noch nie bemerkt habe.

Man erstelle eine Funktion, die einen leeren Wert zurückgibt, beispielsweise

=WENN(A1=“Januar“;1;““)

Man markiere die Spalte mit den Formeln, kopiere sie und fügen sie als Werte ein.

Mit [Strg] + [↓] springt Excel zu letzten (leeren?) Zelle. Stoppt nicht bei den Zahlen. Überspringt die vermeintlich leeren Zellen. Man sieht zwar nichts, aber die Funktion =ISTLEER liefert den Wert FALSCH. Diese Zellen sind nicht leer.

Headlines nerven

In der letzten Excelschulung.

Wir verknüpfen zwei Arbeitsblätter. Ich ziehe den Bezug =ErstesBlatt!ErsteZelle herunter. Da ich nicht weiß wie weit, schieße ich weit übers Ziel hinaus. Das Ergebnis sind Nullen.

Ich frage die Teilnehmer, wie man die Nullen unterdrücken kann. Ich erhalte die Antwort: „in den Optionen“. Richtig: Dort kann man in Datei / Optionen / Erweitert in der Kategorie „Optionen für dieses Arbeitsblatt anzeigen“ die Einstellung „In Zellen mit Nullwert eine Null anzeigen“ ausschalten.

Ich erkläre, dass diese Option nicht immer geschickt ist, denn so werden SÄMTLICHE Nullen unterdrückt. Ich möchte es gerne lokal unterbinden.

Wenn ich solche Fragen stelle, erwarte ich eine Antwort. Erwarte ich WENN(=““. Ein Teilnehmer meldet sich und antwortet: „Mit der Funktion ISTLEER“. Ich bin verblüfft. Damit habe ich nicht gerechnet. Stimmt – ISTLEER prüft das Gleiche wie =““. Wirklich? Wir testen es und stellen natürlich kleine Unterschiede fest. Wenn in der Zelle ein Fehler ist. Oder beispielsweise ein leerer String:

=““

Wir lernen – was auf den ersten Blick gleich aussieht, muss nicht unbedingt gleich sein …