Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1112to1116
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Zahlenformat in VBA
Rainer
Hallo! Ich stehe vor einem banalen Problem ud komme nicht weiter....Per VBA lese ich einen Zellwert aus, den ich später wieder 1:1 ausgehen will. Steht in der betreffenden Zelle der Wert '21', so wird auch '21'. zurückgemeldet. Ich möchte in diesem Falle jedoch '21.00', also mit 2 Dezimalstellen zurückbekommen. Die Rundungsfunktion liefert mit immer die Ganzzahl und geht nicht auf 2 Dezimalstellen ein....Wie kann ich sowas denn machen?
Danke für euer Feedback
Rainer

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zahlenformat in VBA
02.11.2009 12:19:29
Ingo
hallo rainer,
numberformat ="0.00"
mfG
Ingo Christiansen
AW: Zahlenformat in VBA
02.11.2009 12:27:24
Rainer
Hallo! danke für deine Rückmeldung...Wie lautet denn die Syntax hierzu? Mit Numberformat hatte ich rumprobiert, kam aber nicht zu rande..Ich habs so probiert.
betrag_nummer = Cells(x, 11).Value NumberFormat = "0.00"
und so
betrag_nummer = Cells(x, 11). NumberFormat = "0.00"
Danke für deine Rückinfo
AW: Zahlenformat in VBA
02.11.2009 12:34:22
Rudi
Hallo,
=format(cells(x,11),"0.00")
dann ist es aber ein Text und keine Zahl mehr.
Gruß
Rudi
Du musst natürlich die Zelle formatieren,...
02.11.2009 12:57:47
Luc:-?
...wenn der Wert in eine Zelle ausgegeben wird, Rainer,
bspw mit einer udFkt, das geht dann aber nicht mit Range(...).NumberFormat, weil eine Fkt so etwas nicht darf. Alternativ mit einer Subroutine ginge das, macht aber nur Sinn, wenn du wirklich Zellen füllen willst, was ja den Anschein hat. Das erfordert aber eine separate Anweisung, denn es ist eine eigene Eigenschaft des Range-Objekts. Das wird auch alles in der VBE-Hilfe erklärt, warum dann der „Blindflug"...?
Wenn du das anderweitig ausgeben willst, wäre Rudis Lösung angesagt! Und gerundet hast du hoffentlich (kann ich jetzt nicht sehen) mit Round-Arg2 = 2 (bei %Zahlen wären es stets 2 mehr)...
Gruß Luc :-?
PS: Du merkst sicher, dass du uns zu wenig Infos gegeben hast...!
Anzeige
Wert und Format einer Zelle
02.11.2009 14:32:49
Erich
Hi Rainer,
betrag_nummer dürfte der Name einer Variablen sein, wohl vom Typ Double.
Dann könnte das im Prinzip so gehen:

Sub aa()
Dim betrag_nummer As Double
betrag_nummer = Cells(x, 11).Value
Cells(x + 1, 12).NumberFormat = "0.00"
Cells(x + 1, 12).Value = betrag_nummer
' oder besser
With Cells(x + 1, 12)
.NumberFormat = "0.00"
.Value = betrag_nummer
End With
End Sub
Die Zielzelle hat u. a. die beiden Eigenschaften Value (z. B. 0,5) und NumberFormat.
Der Wert 0,5 kann je nach NumberFormat als 0,5, 0,50, 5,00E-01, 1, 1/2, 50%, ... angezeigt werden.
Durch diese unterschiedlichen Formate ändert sich der Wert nicht.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Wert und Format einer Zelle
02.11.2009 14:52:31
Rainer
Hallo! Vielen Dank für die Rückmeldung. Leider ändert das mein Problem nicht.....In der entsprechenden Zelle habe ich damit nur die Wertedarstellung geändert, jedoch nicht den Zellwert selbst. Den Zellwert verschicke ich später in einem Mail und da hätte ich gerne '21.00' anstelle von '21' angezeigt...
Gruß
Rainer
Rückfrage
02.11.2009 15:20:43
Erich
Hi,
"Den Zellwert verschicke ich später in einem Mail "
Wie tust du das? Hier wäre wohl die Stelle zum Eingreifen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Rückfrage
02.11.2009 15:33:43
Rainer
Hallo! Ich lese den Zellwert über eine Schleife mittele cells(x,11).value aus und schreiben den in eien Variable. Diese Variable hat aber bei ganzzahligen Werten keine Dezimalen so wie ich es gerne hätte....
Anzeige
eine Variable hat kein Format
02.11.2009 17:49:30
Erich
Hi Rainer,
meine Frage war: "Den Zellwert verschicke ich später in einem Mail." Wie tust du das?
Auf die Frage hast du gar nicht geantwortet. Tust du das noch?
Ich hatte auch geschrieben: "Hier wäre wohl die Stelle zum Eingreifen."
Zu deinem letzten Beitrag:
"Diese Variable hat aber bei ganzzahligen Werten keine Dezimalen"
Eine Variable hat keine Dezimalen. Sie hat überhaupt kein Format, nur einen Wert.
Eine Zelle dagegen hat sowohl Wert als auch (Number)Format.
Davon hatte ich auch schon mal geschrieben.
Also noch mal:
Wie kommt bei dir der Wert der Variablen in die Mail?

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Ach Erich, ob er das begreift...? owehT
02.11.2009 21:25:28
Luc:-?
Gr... Luc :-?

30 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige