Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
648to652
648to652
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zahlen per Makro aufrunden ?

Zahlen per Makro aufrunden ?
09.08.2005 22:27:53
Selma
Hallo Leute,
ich habe ein Arbeitsblatt in dem ich gern per Makro die Zahlen (ab Zeile 10 bis Ende) in Spalte E wie folgt runden möchte.
Zahlen zwischen 0 und 22 auf 15 aufrunden
Zahlen zwischen 23 und 37 auf 30 aufrunden
Zahlen zwischen 38 und 52 auf 45 aufrunden
Zahlen zwischen 53 und 75 auf 60 aufrunden
Zahlen zwischen 76 und 100 auf 90 aufrunden
Wie mache ich das?
Danke im Voraus...
Liebe Grüße
SELMA

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahlen per Makro aufrunden ?
09.08.2005 22:56:23
Christoph
Hi Selma,
ein Ansatz...
Gruß
Christoph
Option Explicit
Sub Runden()
Dim i As Integer
With Sheets("Tabelle1")
For i = 10 To .Cells(.Rows.Count, 5).End(xlUp).Row
Select Case .Cells(i, 5)
Case Is < 23: .Cells(i, 5) = 15
Case Is < 38: .Cells(i, 5) = 30
Case Is < 53: .Cells(i, 5) = 45
Case Is < 76: .Cells(i, 5) = 60
Case Is < 101: .Cells(i, 5) = 90
End Select
Next
End With
End Sub

AW: Zahlen per Makro aufrunden ?
09.08.2005 23:21:17
Selma
Hallo Christoph,
vielen Dank es funktioniert prima....
Ich habe noch eine Frage....
Aufgerundet soll der Zahl in Spalte E (ab Zeile 10) nur dann, wenn in Spalte D ein "BR" steht, ansonsten nicht.
Wie sieht der Code dann aus?
Beispiel:
D15 = BR
E15 = 8
dann E15 = 15
D25 = TX
E25 = 25
dann E25 nicht aufrunden !
D88 = BR
E88 = 48
dann E88 = 45
Danke nochmal....
Liebe Grüße
SELMA
Anzeige
AW: Zahlen per Makro aufrunden ?
09.08.2005 23:36:59
Christoph
Hi Selma,
mit der zusätzlichen Bedingung so:
zur Info: ich vermute, der Code von ransi schneller
Gruß
Christoph
Option Explicit
Sub Runden()
Dim i&
With Sheets("Tabelle1")
For i = 10 To .Cells(.Rows.Count, 5).End(xlUp).Row
If .Cells(i, 4) = "BR" Then
Select Case .Cells(i, 5)
Case Is < 23: .Cells(i, 5) = 15
Case Is < 38: .Cells(i, 5) = 30
Case Is < 53: .Cells(i, 5) = 45
Case Is < 76: .Cells(i, 5) = 60
Case Is < 101: .Cells(i, 5) = 90
End Select
End If
Next
End With
End Sub

AW: Zahlen per Makro aufrunden ?
10.08.2005 15:43:19
Selma
Danke....
Liebe Grüße
SELMA
Anzeige
AW: Zahlen per Makro aufrunden ?
09.08.2005 23:14:57
ransi
hallo selma
versuchs mal so:
Option Explicit
Public

Sub test()
Dim zelle As Range
Dim letzte As Long
Dim werte As Variant
Dim ziel As Variant
werte = Array(0, 23, 38, 53, 76, 100)
letzte = Range("e10").End(xlDown).Row
For Each zelle In Range("e10:E" & letzte)
ziel = Array(15, 30, 45, 60, 90, zelle.Value)
zelle.Value = WorksheetFunction.Lookup(zelle.Value, werte, ziel)
Next
End Sub

da du nicht gesgt hast was ei werten >100 passieren soll passiert dann nichts.
ransi
AW: Zahlen per Makro aufrunden ?
09.08.2005 23:28:45
Selma
Hallo ransi,
dein Code bleibt hier hängen "Laufzeitfehler: 1004":
zelle.Value = WorksheetFunction.Lookup(zelle.Value, werte, ziel)
Liebe Grüße
SELMA
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige