Announcement

Collapse
No announcement yet.

Zellen formatieren - führende "0" mit anzeigen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zellen formatieren - führende "0" mit anzeigen

    Hallo ihr lieben,

    ich exportiere aus einem anderen Programm heraus eine Datei in Excel2003. Als Beispiel steht in einer Zelle "0600 Verpackungen nach §6.3". Von diesem Zelleninhalt brauche ich nur den ersten Teil bis zum ersten Leerzeichen (hierbei handelt es sich immer um eine Zahl mit einer führenden "0"), soweit so gut, das bekomme ich auch noch hin. Dieser Teil, die Zahl, muss in die gleiche Zelle wieder rein geschrieben werden. Auch das bekomme ich hin. Allerdings streicht er immer die führende "0". Ich brauche diese aber unbedingt, kann mir jemand helfen? Ich schätze mal das funktioniert mit NumberFormat oder so, bin mir da aber nicht sicher. Ein Quellcode wäre echt super.

    Mein Code bereits dafür:
    Cells(i, 16) = Left(Cells(i, 16), InStr(1, Cells(i, 16), " ") - 1)

    Liebe Grüsse Stefie

  • #2
    Hallo Stefie

    ist ist verständlich dass Excel VBA so reagiert. Während der Verarbeitung bleibt das im wesentlichen ein String. Wenn Du vorher die Zellen als "Text" Formatierst, steht das wie gewünscht mit der vorangestellten 0 da. Eine übersichtlichere Variante zu Deinem Quelltext habe ich auch parat

    Cells(i, 16) = Split(Cells(i, 16), " ")(0)

    Diese Zeile nimmt sich den aktuellen Wert der Zelle, trennt den String nach Leerzeichen auf, und gibt ein Array zurück, und mit dem (0), erreichst du das erste Element vor dem Seperator.

    Skript gesteuert erreichst du das Formatieren der Zelle als Text so.

    Cells(i, 16).NumberFormat = "@"

    Damit sieht dein gesamter Quelltext wie folgt aus

    Cells(i, 16).NumberFormat = "@"
    Cells(i, 16) = Split(Cells(i, 16), " ")(0)

    Gruß

    Markus Seid

    Comment

    Working...
    X