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
Inhaltsverzeichnis

Berechnung in VBA mit "Genauigkeit wie angezeigt"

Berechnung in VBA mit "Genauigkeit wie angezeigt"
Sabine
Hallo zusammen,
ist eine Zelle mit mehreren Nachkommastellen (z.B. 2,596687432) als Zahl mit einer Nachkommastelle über "Zellen formatieren" formatiert, wird die Zahl entsprechend der Formatierung angezeigt (z.B. 2,6). Im Hintergrund bleibt die Zahl mit mehreren Nachkommastellen erhalten. Gerechnet wird mit der Zahl im Hintergrund (z.B. 2,596687432).
Ihr kennt bestimmt die Option "Genauigkeit wie angezeigt". Mit dieser kann man die Zellwerte dauerhaft in die angezeigte Genauigkeit (z.B. 3,6) umwandeln. Das "dauerhaft" dabei ist das Problem.
Nun mein Problem: Ich muss in VBA eine Summe über einen bestimmten Bereich berechnen und zwar nur bezogen auf den formatierten Wert, d.h. die angezeigte Genauigkeit. Die Berechnung grundsätzlich durchzuführen ist kein Problem, das klappt mit "WorksheetFunction.Sum(Selection)" ganz gut. Allerdings wird dabei der Wert im Hintergrund mit mehreren Nachkommastellen verwendet.
Wie kann ich die Summierung auf einfache und schnelle Weise in VBA durchführen, ohne auf "Genauigkeit wie angezeigt" umstellen zu müssen?
Irgendwie stehe ich gerade auf dem Schlauch.
LG
Sabine

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Berechnung in VBA mit "Genauigkeit wie angezeigt"
26.10.2009 13:15:31
JogyB
Hi.
So geht es:
Public Function summeWieAngezeigt(ByVal sumRng As Range) As Double
Dim zeLLe As Range
For Each zeLLe In sumRng
If IsNumeric(zeLLe.Value) And Not zeLLe.Value = "" Then
summeWieAngezeigt = summeWieAngezeigt + CDbl(zeLLe.Text)
End If
Next
End Function
Du mußt die Eigenschaft .Text der Zelle nehmen, die bezieht sich auf den angezeigten Wert. Leider läßt sich das in Application.Sum nicht unterbringen (zumindest habe ich auf die Schnelle keine Möglichkeit gefunden).
Gruss, Jogy
AW: Berechnung in VBA mit "Genauigkeit wie angezeigt"
26.10.2009 13:16:55
Sabine
Hi,
danke Dir, ich habs schon fast befürchtet, dass es keine einfachere und schnellere Form gibt.
Grüße
Sabine
Anzeige
AW: Berechnung in VBA mit "Genauigkeit wie angezeigt"
26.10.2009 13:17:47
xr8k2
Hallo Sabine,
versuch mal so:
WorksheetFunction.SumProduct(Round(Selection, 0)) 'Anzahl Nachkommastellen im Round anpassen
Gruß,
xr8k2
AW: Berechnung in VBA mit "Genauigkeit wie angezeigt"
26.10.2009 13:21:20
Sabine
Hallo xr8k2,
danke, das geht (bedingt aber, dass alle Zellen die gleiche Anzahl der Nachkommastellen haben).
Wird mir wohl nix anderes über bleiben als die Schlaufe drüberlaufen zu lassen.
Gruß
Sabine

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige