Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1856to1860
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

Zahl in aktiver Zelle runden

Zahl in aktiver Zelle runden
17.11.2021 09:27:50
Dieter(Drummer)
Guten Morgen Spezialisten/innen.
Folgendes Makro SOLL in aktiver Zelle die Zahl runden und als Wert einfügen, also keine Nachkommastellen.
Leider wird eine Null eingetragen.
Was ist falsch oder wie muss der Code sein, dass in aktiver Zelle die Zahl gerundet und als Wer eingefügt wird?
Mit der Bitte um Hilfe, grüßt
Dieter(Drummer)
  • 
    Sub Runden()
    ActiveCell.FormulaR1C1 = "=ROUND(0,0)"
    ActiveCell.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Application.CutCopyMode = False
    End Sub
    

  • 18
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 09:33:28
    UweD
    Versuch es so
    
    Sub Runden()
    With ActiveCell
    .Value = Round(.Value, 0) ' 0=ohne Nachkomma; 1 = mit einer ...
    End With
    End Sub
    
    LG UweD
    AW: Zahl in aktiver Zelle runden
    17.11.2021 09:35:10
    ChrisL
    Hi
    leicht ausgebaut...
    
    With ActiveCell
    If IsNumeric(.Value) And .Value  "" Then .Value = Round(.Value, 0)
    End With
    
    cu
    Chris
    AW: Zahl in aktiver Zelle runden
    17.11.2021 09:44:52
    Dieter(Drummer)
    Danke UweD und ChrisL,
    einfach perfekt :-).
    Ist es auch möglich, dass es mit mehreren markierten Zellen geht und wie müsste der Code dann sein?
    Mit der Bitte um nachträgliche Lösung, grüßt
    Dieter(Drummer)
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:09:25
    UweD
    Hallo nochmal
    dann so...
    
    Sub Runden()
    Dim Z
    With Selection
    For Each Z In .Cells
    If IsNumeric(Z) And Z  "" Then Z = Round(Z, 0)
    Next
    End With
    End Sub
    

    Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:34:03
    Dieter(Drummer)
    Danke UweD,
    da passiert nichts, bei Aufruf des Makros.
    Hast Du noch eine Idee?
    Gruß, Dieter(Drummer)
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:43:23
    UweD
    da passiert nichts, bei Aufruf des Makros.
    Bei mir schon.
    Bereich markieren und Makro ausführen
    LG UweD
    Hast du die "Zahlen" als Text eingegeben?
    17.11.2021 10:45:15
    UweD
    AW: Hast du die "Zahlen" als Text eingegeben?
    17.11.2021 10:55:30
    UweD
    Dann ggf. so
    
    Sub Runden()
    Dim Z
    With Selection
    For Each Z In .Cells
    On Error Resume Next
    If IsNumeric(CDbl(Z)) And Z  "" Then Z.Value = CDbl(Round(Z, 0))
    On Error GoTo 0
    Next
    End With
    End Sub
    
    LG UweD
    kürzer
    17.11.2021 11:02:01
    UweD
    
    Sub Runden()
    Dim Z
    With Selection
    For Each Z In .Cells
    If IsNumeric(Z.Text) Then Z.Value = CDbl(Round(Z, 0))
    Next
    End With
    End Sub
    

    Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:55:36
    GerdL
    Moin Dieter,
    du hast schon Zahlen, kein Text-Format.
    
    Sub Unit()
    Dim objCell As Range
    'Testwerte
    Cells(2, 1) = 0.95
    Cells(2, 2) = 2.49
    Cells(2, 3) = 2.99
    'Testauswahl
    Cells(2, 1).Resize(1, 3).Select
    If TypeOf Selection Is Range Then
    For Each objCell In Selection
    If IsNumeric(objCell.Text) Then objCell.Value = Round(objCell.Value, 0)
    Next
    Else
    Msgbox "Erst Zellen auswählen!"
    End If
    End Sub
    
    Gruß Gerd
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:16:42
    Wurthberg
    Hallo Dieter
    So zum Beispiel
    
    For Each Cell In Selection
    Cell.Value = Round(Cell.Value, 0) ' 0=ohne Nachkomma; 1 = mit einer ...
    Next
    
    Grüsse Niclaus
    Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:31:49
    Dieter(Drummer)
    Danke Wurthberg,
    da kommt ein Fehlerhinweis "Fehler beim kompilieren: Variable nicht denfinert" und "Cell" wird markiert.
    Da fehlt evtl. eine DIM Anweisung. Hast Du da noch einen Tipp?
    Gruß, Dieter(Drummer)
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:50:10
    Dieter(Drummer)
    Danke Wurthberg,
    habs hinbekommen mit DIM Anweisung eingefügt. Hier der jetzige Code, der funktioniert:
    Danke nochmal und einen erfolgreichen Tag.
    Gruß, Dieter(Drummer)
    'Herber:Wurthberg vom 17.11.2021
  • 
    Sub Runden5() 'Mehrere Zellen
    Dim Cell As Range
    For Each Cell In Selection
    Cell.Value = Round(Cell.Value, 0) ' 0=ohne Nachkomma; 1 = mit einer ...
    Next
    End Sub
    

  • Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 11:15:42
    Wurthberg
    Hallo Dieter
    Meine Formel und Deine Anpassung der Formel haut nur hin, wenn alle ausgewählten Zellen Zahlen enthalten. Wenn die Zellen Text enthalten oder wenn sie leer sind, kommt es zu unerfreulichen Ergebnissen.
    Da ist der Beitrag "kürzer" von UweD vom 17.11.2021 11:02:01 viel besser geeignet.
    Niclaus
    AW: Zahl in aktiver Zelle runden
    17.11.2021 11:33:37
    Dieter(Drummer)
    Danke Niclaus,
    für den Hinweis. Es sind aber immer Zahlen.
    Gruß, Dieter(Drummer)
    AW: Zahl in aktiver Zelle runden
    17.11.2021 09:53:27
    GerdL
    Moin Dieter,
    ich favorisiere
    
    ActiveCell = WorksheetFunction.Round(ActiveCell.Value, 0)
    
    Für Kürzeres kommt ggf. es darauf an, wie du "biegen" willst (Int, Fix, CLng etc.).
    Die Rundung einer Null ergibt immer Null :-)
    Gruß Gerd
    Anzeige
    AW: Zahl in aktiver Zelle runden
    17.11.2021 10:07:23
    Dieter(Drummer)
    Danke GerdL,
    ebenfalls eine perfekte Lösung und noch kürzer.
    Hast Du auch eine Lösung für mehrere, markierte Zelle, dass diese direkt gerundet werden?
    Mi der Bitte um erneute Hilfe, grüßt,
    Dieter(Drummer)
    Allen Helfern herzlichen Dank ... owT
    17.11.2021 10:51:29
    Dieter(Drummer)

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige