mit VBA eine große Zahl in Text wandeln

...komplette Frage anzeigen

3 Antworten

Das Hochkomma war auch meine erste Idee, aber es scheint trotzdem nicht zu klappen.
Bei mir klappt es aber so (quasi doppelt gemoppelt):

Dim VerwZweck As String

Sheets("Export").Select          ' Leseblatt aktivieren
'... Suche nach der Zelle ..
VerwZweck = Format(ActiveCell.Value, "@")     ' VerwZweck lesen
'MsgBox VerwZweck

'...
Sheets("Import").Select          ' Schreibblatt aktivieren
Range("H" & zeile) = "'" & VerwZweck   ' Verw-Zweck schreiben
PinoGrigio 04.03.2014, 15:45

Hallo Oubyi,

se won änd ounli rait soljuschn!
Hat gut funktioniert, sogar ohne das doppelt gemoppelte Hochkommagedöns ;-)
Vielen Dank für die Subber-Lösung!

LG PG

0
Oubyi 04.03.2014, 23:18
@PinoGrigio

Freut mich, dass ich helfen konnte ☼
Danke fürs ☆

0

Das ist sehr einfach: Stelle der Zahl ein Hochkomma voran! In der Darstellung wird es ausgeblendet und ist also nicht sichtbar. Excel hält die 13-stellige Zahl dann für Text, mit dem nebeneffekt, dass man mit dieser Zahl nicht mehr rechnen kann (aber das willst du ja auch nicht!?)

Wenn in Zelle A1 die Zahl "1,1212E+12" zu sehen ist, steht in der Ergebniszelle "'1121156880433", sichtbar ist aber "1121156880433"

PinoGrigio 04.03.2014, 15:42

Hallo mirolPirol,

na, ganz so einfach ist dieses Problem doch nicht zu lösen, siehe meine Anwort bei PauleVBA.

LG PG

0

Schreib mal

 Range("H" & Zeile) = "'" & VerwZweck   ' Verw-Zweck schreiben

Das ist ein einzelnes Hochkomma zwischen zwei Anführungszeichen

PinoGrigio 04.03.2014, 15:39

Hallo PauleVBA,

ich hab deinen Vorschlag getestet, aber das Ergebnis (laut Kontrollausdruck "Debug.Print") ist:
VerwZweck = '1,1212E+12
Eigentlich klar, da die Zahl in der Quell-Datei (wie in meiner Eingangsfrage beschrieben) schon als Exponentialzahl dargestellt wird, kann da ein Hochkomma nicht mehr viel dran ändern, leider.

LG PG

0

Was möchtest Du wissen?