Office: Excel Zellenwert automatisch zurücksetzen

Helfe beim Thema Excel Zellenwert automatisch zurücksetzen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, leider weiß ich nicht wie ich die Frage korrekt stellen sollte, deswegen einmal anhand eines Beispiels erklärt. Angenommen die Kaltmiete... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von TilH47, 5. April 2023.

  1. TilH47 Neuer User

    Excel Zellenwert automatisch zurücksetzen


    Hallo, leider weiß ich nicht wie ich die Frage korrekt stellen sollte, deswegen einmal anhand eines Beispiels erklärt.

    Angenommen die Kaltmiete beträgt 300€ und die Nebenkosten100€, dies ist die Soll Miete. Nun möchte ich für alle Monate die Ist Kosten Monat für Monat eintragen und überprüfen ob zu viel oder zu wenig gezahlt wurde im Monat Januar hat Ist Kaltmiete G4 und Ist Nebenkosten G5.

    Mein Wunsch wäre, dass ich wenn beispielweise Herrn Meier mir 360€ überweist, ich die 360€ in G4 eintrage und die Differenz von 360 und 300 in G5 angezeigt wird, G4 sich allerdings auf die 300€ Kaltmiete zurücksetzt. Sprich ich gebe in G4 360€, drücke Enter und in G4 soll dann 300€ stehen und in G5 60€. Sollte der überwiesene Betrag unter 300€ fallen (Beispiel 200€) soll dieser dann in G4 angezeigt werden und G5 = 0 stehen.
    Wichtig ist, dass sich G4 nach dem Eintragen des Wertes selbst wieder umändert, dennoch die Differenz der beiden Werte in G5 erscheint.

    Ich könnte diese Rechnung natürlich in einfacher Form mit einer neuen Spalte ganz einfach darstellen, in welcher in dann die Ist Überweisung einsetze und die Zellen dann abgleichen lasse. Da es in meinem Kopf dann aber nicht so charmant aussieht, wollte ich Fragen ob es möglich wäre das oben genannte Beispiel nur mit den Zellen G4 und G5 durch Formeln umzusetzen.


    Ich bin sehr dankbar für jegliche Art von Rückmeldung.
     
    TilH47, 5. April 2023
    #1
  2. Doming
    Doming hat Ahnung
    Moin,
    ja, das geht, mit VBA.
    Zellenaktualisierung überwachen und bei Eingabe Wert aufteilen.
    Musst dann mit der Dateiendung .xlsm leben.
     
    Doming, 6. April 2023
    #2
  3. Doming
    Doming hat Ahnung
    So, hier der Code (unter VBA in die Tabelle1 schreiben):
    Code:
    Option Explicit
    
    Private Einmalreicht As Boolean
    
    Private Sub Worksheet_Change(ByVal Target As Range)
     Dim Betrag As Double
        With Target
            If Einmalreicht Then
                Einmalreicht = False
                Exit Sub
            End If
            If Intersect(Target, Range("G4")) Then
                Einmalreicht = True
                Betrag = .Value
                If Betrag > 300 Then
                    Cells(4, 7) = 300
                    Einmalreicht = True
                    Cells(4, 8) = Betrag - 300
                Else
                    Cells(4, 8) = 0
                End If
            End If
        End With
    End Sub
     
    Doming, 6. April 2023
    #3
  4. HKindler
    HKindler Erfahrener User

    Excel Zellenwert automatisch zurücksetzen

    Hi,

    in Excel sollte man an solche Spielereien erst gar nicht denken. Eingabezelle ist Eingabezelle und Ausgabezelle ist Ausgabezelle. Alles andere führt früher oder später ins Chaos. Daher: Auch wenn es in deinem "Kopf dann aber nicht so charmant aussieht", mach es so! Aussehen ist zweitrangig.

    @Doming: wozu diese Klimmzüge mit Einmalreicht? Genau dafür gibt es Application.EnableEvents
    Außerdem steigt deine Routine aus wenn mehr als eine Zelle geändert wird. Denn dann wird in deiner Zeile
    Betrag = .Value versucht einer Double-Variable ein Array zuzuweisen. Das lässt direkt den Debugger anspringen.
    Außerdem führt deine Bedingung If Intersect(Target, Range("G4")) Then in die Irre, denn hier wird nicht überprüft, ob G4 geändert wurde, sondern es wird Versucht den Inhalt der Schnittmenge auf True oder False zu testen. Gibt es keine Schnittmenge kommt prompt wieder der Debugger. Gibt es die Schnittmenge, denn wird von dieser, also von G4, Inhalt überprüft. Ist der True, sprich ungleich 0, dann werden die folgenden Befehle abgearbeitet.
    Noch eins: Wenn in G4 etwas anderes als eine Zahl eingegeben wird, steigt deine Routine aus.
    Fazit: Deine Routine ist in dieser Form unbrauchbar. Hier mein Vorschlag, der mit mehreren gleichzeitig geänderten Zellen klar kommt, auf jede geänderte Zelle in Spalte G regiert und auch nicht aussteigt, falls keine Zahl eingegeben wird:
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Bereich As Range
    Dim Zelle As Range
    Set Bereich = Intersect(Target, Range("G:G"))
    If Not Bereich Is Nothing Then
        For Each Zelle In Bereich
            If IsNumeric(Zelle) Then
                Zelle.Offset(, 1) = Application.Max(0, Zelle - 300)
                Application.EnableEvents = False
                    Zelle = Application.Min(300, Zelle)
                Application.EnableEvents = True
            End If
        Next Zelle
    End If
    End Sub
    @TilH47: auch wenn meine Routine funktionier, würde ich dir trotzdem den ersten Abschnitt meines ans Herz legen: Verwende eine eigene Eingabe-Zelle. Zumal du doch sicherlich sowieso irgendwo die Gesamtsumme sehen willst.
     
    HKindler, 6. April 2023
    #4
Thema:

Excel Zellenwert automatisch zurücksetzen

Die Seite wird geladen...
  1. Excel Zellenwert automatisch zurücksetzen - Similar Threads - Excel Zellenwert automatisch

  2. Excel Termin in Outlook Kalender

    in Microsoft Excel Hilfe
    Excel Termin in Outlook Kalender: Hallo zusammen, ich habe mal wieder ein Problem das ich schlicht und ergreifend nicht gelöst bekomme. Leider bin ich in VBA ein absoluter Neuling. Beverly hier aus dem Forum hat mir mit einem...
  3. Wie kann man in einer Excel-Datei nur ein Arbeitsblatt freigeben

    in Microsoft Excel Hilfe
    Wie kann man in einer Excel-Datei nur ein Arbeitsblatt freigeben: Hallo Zusammen, Wie kann man in einer Excel-Datei nur ein Arbeitsblatt freigeben, so dass die dritte Person die folgenden Bedingungen erfüllt: Die dritte Person kann nur die freigegebenen...
  4. VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.

    in Microsoft Excel Hilfe
    VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.: Hallo zusammen, Eine Tabelle mit 9 Worksheets, Datenblatt, Studien, Studie_1 ...Studie_7. Auf dem Deckblatt werden in Zelle B4-B10 die Namen der Studien eingetragen. Davon abhängig ob ein Name...
  5. Zellbezugfehler

    in Microsoft Excel Hilfe
    Zellbezugfehler: Hallo, da ich bereits seit einiger Zeit herumkopfe und keine wirkiche Lösung bisher gefunden habe, versuche ich hier mal mein Glück. Ausgangsituation: Ich habe für meine Schüler:innen ein...
  6. Excel VBA Spalten mit Ordnerinhalt vergleichen

    in Microsoft Excel Hilfe
    Excel VBA Spalten mit Ordnerinhalt vergleichen: Hallo, Bin ehr Excel VBA Neuling, Würde aber gerne in einer bestehender Tabelle die Auflistung der Ordner mit dem eigentlichen Stand in den besagten Ordner kontrollieren. Also in der Spalte Q10...
  7. Excel Zellenwert aus vorgegebenen Bereich ohne Wiederholung wiedergeben

    in Microsoft Excel Hilfe
    Excel Zellenwert aus vorgegebenen Bereich ohne Wiederholung wiedergeben: Guten Tag, ich bin derzeit dabei mir ein Tabellenblatt aufzubauen, wo ich anhand von Fußballergebnissen mir ein simples Auslosungstool anhand einfacher Formeln baue. Nun bin ich aber beim...
  8. Zellenwert um +1 erhöhen

    in Microsoft Excel Hilfe
    Zellenwert um +1 erhöhen: Hallo, Meine Frage bezieht sich auf ein Zahlenwert welcher in einer Zelle steht, diese Zelle ist mit einem Diagramm verknüpft und beschreibt eine Parabel. Nun würde ich gerne wissen ob es möglich...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden