Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

runden

Forumthread: runden

runden
Arend
Hallo Ihr,
ich möchte alle Werte der Spalte D auf glatte Hunderter per Makro runden.
Wie geht das?
herzlichen Dank
arend
Anzeige
auf- oder abrunden
24.09.2009 19:32:41
Matthias
Hallo
als Bsp.
für D1:D10
hier der Code:
Option Explicit
Sub myCode()
Dim wng
Dim c As Range
For Each c In Range("D1:D10") 'anpassen
If IsNumeric(c) Then
wng = Application.WorksheetFunction.Floor(c.Value, 100)
c.Value = wng
End If
Next
End Sub

( WorksheetFunction.Floor=Untergrnze() )
es stehen diese Werte drin:
599
222
369
456
421
text
351
316
281
246
Durch den Code kannst Du in diesem Bereich die vollen Hunderter anzeigen lassen.
das sehe dann so aus:
aus 599 wird 500
aus 222 wird 200
aus 369 wird 300
aus 456 wird 400
aus 421 wird 400
text bleibt text
aus 351 wird 300
aus 316 wird 300
aus 281 wird 200
aus 246 wird 200
Gruß Matthias
Anzeige
AW: auf- oder abrunden
24.09.2009 20:24:54
ing.grohn
Hallo arend,
warum denn nicht einfach so:
=GANZZAHL(D20/100)*100
?
MfG
Albrecht
... weil nach einem Makro gefragt wurde !! oT
24.09.2009 20:35:12
Matthias
Hallo
Da Du es mich geschickt hast, hier auch eine Antwort von mir:
als Formel geht dann auch: =UNTERGRENZE(D20;100)
aber es wurde halt nach einem Makro gefragt.
Gruß Matthias
Anzeige
war ja doch mT und nicht oT Sorry
24.09.2009 20:38:33
Matthias
AW: war ja doch mT und nicht oT Sorry
24.09.2009 21:52:33
ing.grohn
Hallo ,
es geht doch immer um das resultat oder
man kann (fast) alles auch in ein Makro packen
Mfg
Albrecht
Genau! ... und ein Makro wurde eben gesucht ... oT
24.09.2009 22:40:45
Matthias
Anzeige
AW: Genau! ... und ein Makro wurde eben gesucht ... oT
25.09.2009 00:48:50
ing.grohn
Hallo,
so gehts auch (man kann die Zeilen auch zählen):
Sub ganzzahl()
' ganzzahl Makro
' Makro am 24.09.2009 von Albrecht Grohn aufgezeichnet
ActiveCell.FormulaR1C1 = "=INT(RC[-1]/100)*100"
Selection.Copy
Range("C4:C8").Select
ActiveSheet.Paste
End Sub
MfG
Albrecht
Ps: jetzt ists n Makro
Anzeige
AW: runden
24.09.2009 19:32:55
hary
Hi Arend
meinst Du so? auf oder abrunden. Teste mal

Sub hundert()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("D1:D" & Cells(Rows.Count, 4).End(xlUp).Row)
c = WorksheetFunction.Round((c / 100), 0) * 100
Next
Application.ScreenUpdating = True
End Sub

Gruss Hary
Anzeige
c = WorksheetFunction.Round(c, -2) würde...
25.09.2009 06:33:42
Luc:-?
...reichen, Hary!
Allerdings würde wie bei dir aus 550 → 600... ;-)
Gruß Luc :-?
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18