Format bzw. Auf-/Abrunden auf beliebige Teilung

  • Excel

  • hoku
  • 5244 Aufrufe 4 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Format bzw. Auf-/Abrunden auf beliebige Teilung

    Hallo Excel-Experten, ich habe schon wieder ein kleines Problem:

    Ich habe in einer Tabelle eine Spalte mit Ganzzahlen zwischen 1000 und 20000. Ich möchte die Anzeige auf eine vorgegebene Teilung ändern, als Beispiel mal 75:
    Wenn also jemand 2000 in die Zelle schreibt, dann soll 2025 drinstehen und wenn er 4480 eintippt soll 4500 dastehen, also immer Teilung 75.

    Am besten wäre es, wenn es mit Format ginge, aber da kann man ja nur auf Stellen runden und Zeichen hinzufügen. Ein Makro geht ja nicht, das muss je extra gestartet werden, ich werde es mal mit "Code eingeben" versuchen, das ist ja ständig aktiv. Aber da blicke ich sowieso nicht ganz durch, oder kann mir jemand in 3 Sätzen erklären, was der Unterschied zwischen Makro und Code ist?

    Im Excel gibt es ja auch die ganzen Funktionen, aber da kenne ich mich auch nicht so aus.

    Wenn es keine andere Lösung gibt werde ich eine zusätzliche Spalte machen müssen, also getrennte Zellen für Eingabe und Rechenergebnis. Aber das wollte ich vermeiden, die Tabelle ist schon überladen.

    Gruß
    hoku
  • nein soetwas geht nicht - du kannst doch eine Zelle nicht das "Denken bzw. Handeln" beibringen. Eine Zelle kann doch niemals Bezug nehmen auf sich selbst, das geht eben nun nur über eine Hilfszelle/-Spalte.
    Beispiel: in Zelle A1 gibst du die Formel ein =Wenn(A1=1030;A1+20;A1) >> Ergebnis: Zirkelbezug!!! weil A1 auf sich selber Bezug nimmt! Die Formel könntest du also nur in A2 (Hilfszelle eingeben.

    Das wäre genauso, als wenn du in dein Auto (=Eingabezelle =1030)) einsteigst und das Auto jetzt wissen soll, dass es starten soll. Dazu müsstest du auf der Sitzfläche einen Sensor (=Hilfszelle=1050) einbauen, der dann das Auto startet. ;)

    dieses Beispiel trifft auch auf dein anderes Thema zu Zahlenwert erhöhen/verringern. Zellen können nicht selber denken und handeln, das musst du schon veranlassen, ohne das du dabei ein Bezug der Zelle auf sich selber herstellst. Und das geht nur über eine Hilfszelle.
    .....................Geld allein macht nicht glücklich. Es gehören auch noch Aktien, Beteiligungen, Gold und Grundstücke dazu.
  • Doch es geht. Mithilfe von totschs Formel in VBA.

    Quellcode

    1. Private Sub Worksheet_Change(ByVal Target As Range)
    2. ' Nur Änderungen in Spalte A berücksichtigen
    3. If Target.Column = 1 Then
    4. wert1 = Target.Value
    5. If IsNumeric(wert1) And Not IsEmpty(wert1) Then
    6. wert2 = Round(wert1 / 75, 0) * 75
    7. Target.Value2 = wert2
    8. End If
    9. End If
    10. End Sub
    Alles anzeigen


    Du brauchst nur die Zahl anzupassen. Spalte A = 1 usw. Und du darfst diesen Code nicht als Modul einfügen, sondern du musst mit Alt+F11 den VBA Editor öffnen, dann links im Projekt Explorer (Strg+R) auf das Arbeitsblatt (nicht Mappe) doppelklicken und dort den Code einfügen.

    Ohne jetzt in den anderen Thread reingeguckt zu haben, aber wenn es hier angeblich aus dem selben Grund nicht ging, wie in deinem anderen Thread, dann könnte es dort auch mit VBA gehen.

    Gruß

    FeliX_22