Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Subtrahieren bis 0, dann andere Zelle

Forumthread: Subtrahieren bis 0, dann andere Zelle

Subtrahieren bis 0, dann andere Zelle
30.10.2018 22:04:31
Polly
Hallo,
ich suche nach einer Lösung für folgendes Problem:
Ich habe in einer Excel Tabelle diese Werte
A1= 10
B1= 30
Wenn ich in C1:Z1 nun z.B. "x" eintrage, soll Excel für jedes "x" 1 subtrahieren, angefangen bei A1, bis dieser Wert auf 0 ist und dann weiter bei B1.
Also gebe ich in C1 ein "x" ein, soll A1=9 sein, wenn ich zudem in D1 ein weiteres "x" eintrage, soll A1=9 sein... dies soll so lange erfolgen, bis A1=0 ist. Wenn A1=0, soll bei einem weiteren "x"-Eintrag bei B 1 subtrahiert werden, also B1=29 usw.
Danke vorab für die Mühe.
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Subtrahieren bis 0, dann andere Zelle
30.10.2018 22:30:28
Werner
Hallo Polly,
folgendes Makro ins Codemodul des Tabellenblattes auf der es sich auswirken soll.
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 1 And Target.Column > 2 Then
If Target.Count > 1 Then
Application.EnableEvents = False
MsgBox "Mehrfachauswahl unzulässig."
Application.Undo
Application.EnableEvents = True
Exit Sub
End If
If Range("B1") = 0 And Target = "x" Then
Application.EnableEvents = False
MsgBox "Beide Werte stehen auf 0, unzulässig."
Application.Undo
Application.EnableEvents = True
Exit Sub
End If
If Target = "x" And Range("A1") > 0 Then
Range("A1") = Range("A1") - 1
ElseIf Target = "x" And Range("B1") > 0 Then
Range("B1") = Range("B1") - 1
End If
End If
End Sub
Gruß Werner
Anzeige
AW: Subtrahieren bis 0, dann andere Zelle
30.10.2018 22:31:52
Polly
Danke für die Mühe! Wäre das auch ohne Makro, also mit einer einfachen Formel, lösbar? Kann bei der Arbeit aus verschiedenen Gründen nicht mit Makros arbeiten.
Das geht ...
30.10.2018 23:25:24
lupo1
A1: =10-ANZAHL2(C1:L1)
B1: =30-ANZAHL2(M1:AP1)
mit benutzerdefinierter Datenüberprüfung C1[:AO1]: =ZÄHLENWENN($C1:C1;"X")=SPALTE(A1)
Anzeige
... ich meinte C1[:AP1]: statt C1[:AO1]:
30.10.2018 23:26:26
lupo1
AW: ... ich meinte C1[:AP1]: statt C1[:AO1]:
30.10.2018 23:40:52
Polly
cool, vielen lieben Dank!! Jetzt muss er bei A1 nur noch aufhören, wenn er bei 0 ist (mit der o.g. Formel geht er auch in den negativen Bereich)
AW: ... ich meinte C1[:AP1]: statt C1[:AO1]:
30.10.2018 23:45:18
Polly
hm.. doch nicht.. irgendwie zieht er sowohl bei A1 als auch bei B1 jeweils einen ab... eigentlich soll erst bei A1 abgezogen werden und wenn A1=0, dann bei B1 weiter...
Anzeige
stimmt, fahrlässig von mir vergessen
31.10.2018 06:21:38
mir
bei beiden Formeln
=MAX(;bisherigeFormel)
;
Anzeige
Anzeige

Infobox / Tutorial

Subtrahieren bis 0 in Excel: So gelingt es!


Schritt-für-Schritt-Anleitung

Um in Excel fortlaufend zu subtrahieren, bis der Wert 0 erreicht ist, kannst du folgende Schritte durchführen:

  1. Zellen vorbereiten: Setze in A1 den Startwert (z.B. 10) und in B1 den nächsten Wert (z.B. 30).
  2. Formel in A1 einfügen: Verwende die Formel:
    =MAX(0; 10 - ANZAHL2(C1:Z1))

    Diese Formel subtrahiert die Anzahl der "x" in den Zellen C1 bis Z1 von 10 und stellt sicher, dass der Wert nie unter 0 sinkt.

  3. Formel in B1 einfügen: Setze in B1 die Formel:
    =MAX(0; 30 - ANZAHL2(C1:Z1) + ANZAHL2(D1:Z1))

    Diese Formel sorgt dafür, dass B1 erst abgezogen wird, wenn A1 0 erreicht.


Häufige Fehler und Lösungen

  • Problem: Die Werte in A1 und B1 werden gleichzeitig reduziert.

    • Lösung: Stelle sicher, dass die Formeln in A1 und B1 die Anzahl der "x" korrekt zählen und die Bedingungen für die Subtraktion beachten.
  • Problem: Negative Werte in den Zellen.

    • Lösung: Verwende die MAX-Funktion, um sicherzustellen, dass die Werte nicht unter 0 fallen.

Alternative Methoden

Wenn du keine Makros verwenden kannst, gibt es auch die Möglichkeit, die Excel-Formel für Subtraktionen zu nutzen:

  • Datenüberprüfung: Du kannst die Formel zur Datenüberprüfung verwenden, um sicherzustellen, dass nur "x" eingegeben werden kann. Benutze dazu:

    =ZÄHLENWENN($C1:C1;"x")=SPALTE(A1)
  • Eingabe von "x": Stelle sicher, dass du in den Zellen C1 bis Z1 nur "x" eingibst, um die Subtraktion auszulösen.


Praktische Beispiele

Angenommen, du hast folgende Werte:

  • A1: 10
  • B1: 30

Wenn du in C1 und D1 jeweils "x" einträgst, wird A1 auf 8 und dann auf 7 gesenkt. Erst wenn A1 0 erreicht, beginnt B1 mit der Subtraktion.

Um zu überprüfen, ob alles funktioniert, kannst du die Zellen C1 bis Z1 mit "x" füllen und beobachten, wie A1 und B1 entsprechend reduziert werden.


Tipps für Profis

  • Verwende benutzerdefinierte Formatierungen: Damit die Zellen immer leserlich bleiben.
  • Experimentiere mit dynamischen Bereichen: Nutze die INDIREKT-Funktion, um flexiblere Formeln zu erstellen.
  • Teste regelmäßig: Überprüfe die Formeln und die Eingabewerte, um sicherzustellen, dass alles korrekt funktioniert.

FAQ: Häufige Fragen

1. Wie kann ich die Subtraktion anpassen?
Du kannst die Startwerte in A1 und B1 ändern, um deine Anforderungen zu erfüllen.

2. Warum funktioniert die Formel nicht wie erwartet?
Überprüfe, ob die Zellen korrekt referenziert sind und ob die Anzahl der "x" in den Zellen richtig gezählt wird.

3. Ist es möglich, mehrere Zellen gleichzeitig zu subtrahieren?
Ja, du kannst die Formeln entsprechend anpassen, um mehrere Zellen zu berücksichtigen.

4. Was kann ich tun, wenn ich keine Makros verwenden kann?
Nutze die oben beschriebenen Formeln und Datenüberprüfungen, um deine Anforderungen ohne Makros zu erfüllen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige