Mir wurde ein Modeljob von einer Agentur angeboten. Ich bin das „Vorher“.

Ich weiß, das sollte man nicht machen. Ich lasse den Anwender über eine Inputbox eine Zahl eingeben, speichere sie in einer String-Variablen und schreibe das Ergebnis nach Excel:

Sub ZahlAlsTextEintragen()

Dim s As String

s = InputBox(„Bitte eine Zahl eintragen.“)

ActiveCell.Value = s

End Sub

Das Ergebnis: 1 bleibt 1 (Excel schafft eine korrekte Typkonvertierung). Aus 1,5 und 1,55 werden die Texte 1,5 und 1,55 (sie stehen linksbündig in der Zelle und werden mit einem Smarttag versehen, das „die Zahl in dieser Zelle als Text formatiert ist oder ein Apostroph vorangestellt wurde“.)

Gibt man allerdings 1,555 ein, wird diese Zahl in 1.555 konvertiert. Ups!

Komisch?

Wirklich komisch. In unserer Firma gibt es Abteilungen. Sie tragen Nummern der Form 1 oder 1.5 oder 1.3.1. Erstaunlicherweise zeigt Excel bei „1“ und bei „1.3.1“ grüne Ecken an. Bei „1.5“ allerdings nicht …

Viele grüne Ecken, aber nicht überall ...

Viele grüne Ecken, aber nicht überall …

Die Antwort finden Sie, wenn Sie mit der Maus über das Smarttag fahren:

Unterschiedliche "Fehler"

Unterschiedliche „Fehler“

Die Antwort:

„1“ wir interpretiert als Zahl 1, die als Text formatiert wurde.

„1.3.1“ wird interpretiert als Datum: 01.03.2001, das als Text formatiert wurde.

„1.5“ – hum – keine Ahnung – eigentlich interpretiert es Excel als Datum (01.05. im aktuellen Jahr). Warum hier kein Smarttag erscheint – keine Ahnung …