mit VBA eine große Zahl in Text wandeln

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

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

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
@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"

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

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

VBA picklist formatierung?

Hi,

Und zwar habe ich eine Liste an Werten die eine bestimmte Farbe/Schriftfarbe annehmen. Ich weiß eigentlich würde ich es auch mit bedingter Formatierung machen, aber das Problem ist dass meine Combobox 30 Werte hat und 30 mal eine bedingte Formatierung machen ist nicht gerade so toll :). Wie kann ich das schneller oder einfacher machen?

P.S: Es handelt sich nicht um eine Userform sondern um eine Zelle die ein Auswahlfeld mit verschiedenen Inhalten (Picklist werten).

...zur Frage

Excel VBA Fehler '1004' "Anwendungs- oder objektdefinirter Fehler" Was tun?

Mein Programm Prüft ob in einer bestimmten Zelle eine Stadt steht und kopiert dann aus "Diverses" eine bestimmte Range. Nur leider erscheint immer der Laufzeitfehler '1004' Anwendungs- oder objetdifinirter Fehler. Kann mir da jemand vieleicht Helfen?

Private Sub CommandButton1_Click()

If Cells(9, 4) = "Düsseldorf (3885)" Then

  Sheets("Diverses").Select
  Sheets("Diverses").Range(L2, L8).Select //Fehler in der Zeile
  Selection.Copy
 
  Sheets("IT Banf").Select
  Sheets("IT Banf").Range(A35, A41).Select
  ActiveSheet.Paste
 
  Sheets("Diverses").Select
  Sheets("Diverses").Range(L9, L13).Select
  Selection.Copy
  
  Sheets("IT Banf").Select
  Sheets("IT Banf").Range(C35, A39).Select
  ActiveSheet.Paste


End If


End Sub
...zur Frage

Exif-Daten durch Excel(VBA)?

Hallo, ich habe eine Datenbank mit Fotos in Excel erstellt. Jetzt möchte ich aber, dass das Datum das Datum der Aufnahme ist, also das Datum, das in den Exif-Daten der Bilder angegeben ist. Ich habe die Funktion .DateTimeOriginal gefunden, aber habe gelesen, dass diese Funktion nicht in VBA arbeitet, da sie aus einer anderen Sprache, VB .NET, ist und in Visual Basic Express angewendet werden kann. Gibt es andere Möglichkeiten die Exif-Daten rauszuleiten durch VBA ?

...zur Frage

VBA Makro Excel Letzte beschriebene Zeile vor Leerzeile, weitere Leerzeile einfügen

Guten Tag,

ich suche einen Code für ein Makro,dass in Spalte B unter der letzten beschriebenen Zelle vor einer leeren Zelle (also nicht am kompletten Ende des Sheets) eine Leerzeile einfügt. Habe schon etliche codes ausprobiert, zb

Sub letzte_Zeile()

'letzte benutzte Zelle in Spalte 2 finden DIM Ende As Long With ActiveSheet

Ende = .Cells(Rows.Count, 2).End(xlUp).Row End With

End Sub

Dieser sollte mir eig die letzte beschriebene Anzeigen,es funktioniert aber Garnichts.

Freue mich über Vorschläge. Viele Grüße

...zur Frage

beim kopieren von Zellen plötzlich nicht mehr leer

In Tabelle 1 in den Spalten Z:AB habe ich 1800 Redewendungen zu stehen. Wobei nicht jede Zelle mit Inhalten belegt ist. Dies hängt von meiner Eingabe ab. Ich gebe das Wort "Tisch" ein dann werden in den Spalten Z:AB alle Datensätze die das Wort Tisch enthalten angezeigt. Alle anderen sind leer. Mit dem Makro Übersetzung kopiere ich die Spalten Z:AB in die Tabelle 2. Spalte B:D. Dort sind sämtliche Zellen ohne Text leer. In Tabelle 4 A1 gebe ich ein =Tabelle2!B6 und ziehe das bis A1800. Nun der Efekt. in einigen Zellen, die leer sein sollten, steht eine Null. Die stört mich da ich an Hand der Spalte A dann die Leerzeilen ausblende, damit nur noch die Zeilen angezeigt werden, die auch Text besitzen. Nun meine Frage: Wie kommt es , das eine leere Zelle in der Tabelle 2 plötzlich in der Tabelle 4 mit einer Null belegt ist. Sämtliche Zellen sind mit Text formatiert.

Sub deutsch_polnische_Übersetzung() ' ' deutsch_polnische_Übersetzung Makro

'Übersetzen
    Sheets("Tabelle1").Select
    Columns("Z:AB").Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Columns("B:D").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        
    Range("B1").Select
    
    Sheets("Tabelle4").Select
    Range("a1").Select
End Sub

Hat jemand ne Idee

Gruß Monkee

...zur Frage

Zelleninhalt mit Makro/ Vba verschieben

Moin,

ich hab folgendes Problem, und zwar möchte ich eine Makrofunktion erstellen mit der man den Zellinhalt einer markierten Zelle in eine andere frei wählbare Zelle kopieren kann. Bis jetzt sieht meine Funktion so aus:

Sub Makro()

Dim Quellbereich As Range Set Quellbereich = ActiveCell

Quellbereich.Copy Range("C1").Select Selection.PasteSpecial Paste:=x1Values, Operation:=x1None, SkipBlanks:= False, Transpose:=False Application.Cutcopymode = False Quellbereich.Select Quellbereich = "" Range("C1").Select

End Sub

Jetzt ist meine Frage, wie ich "Range("C1") auch über die Auswahl mit der Maus steuern kann. Ich stell mir das mit Pause/Wait und Input neue Zellenauswahl oder so vor. Evnt. auch das man das Makro wie bisher über Strg+y startet und anschließend die Quell und die Zielzelle nach einander markiert.

...zur Frage

Was möchtest Du wissen?