Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Addieren von TRUE-Werten

Addieren von TRUE-Werten
04.11.2019 22:44:31
TRUE-Werten
Hallo,
ich habe ein Problem bei einer Exceldatenbank und hoffe, dass ihr mir helfen könnt. Ich bin mittlerweile mit meinem Latein am Ende.:/
Im Anhang findet ihr das Beispiel dazu. Ich möchte, dass man über eine Userform mit Drop-Down nur den Namen eines Bürgers auswählen muss und dann das Makro automatisch alle Streckenwerte des gewählten Bürgers, die mit dem Auto zurückgelegt worden sind (also auf TRUE stehen), aufaddiert werden und auf einem neuen Blatt ausgegeben werden.
Da die Datenbank sehr groß und lang ist, hab ich sie etwas bereinigt. Außerdem wäre ich euch dankbar, wenn ihr mir den Code etwas kommentieren könnt. Damit lern ich einerseits was und ich kann ihn leichter anpassen. Ich hoff, dass das nicht zu viel verlangt ist.
Hier das Beispiel:
https://www.herber.de/bbs/user/132948.xlsm
Viele Grüße
Sven
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mit Teiilergebnis (ohne VBA)
05.11.2019 03:11:19
Matthias
Hallo Sven,
dazu benötigt man kein VBA.
Siehe Deine Beispieldatei.
Tabelle1

 ABCDEFGHIJKLMN
1Ökodatenbank  85    Gesamt-Anzahl (TRUE):5    
2… 1… 2… 3Strecke in km… 5… 6… 7… 8… 9Auto genommen… 11… 12Name des Bürgers… 14
3   10     TRUE  Marianne 
4   20     FALSE  Marianne 
5   5     TRUE  Ludwig 
6   7     TRUE  Gerhard 
7   1     TRUE  Gerhard 
8   2     FALSE  Gerhard 
9   5     FALSE  Franziska 
10   10     TRUE  John 
11   25     FALSE  Lisa 

Formeln der Tabelle
ZelleFormel
D1=TEILERGEBNIS(9;Tabelle1[Strecke in km])
J1=ZÄHLENWENN(Tabelle1[Auto genommen];"TRUE")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Du erstellst eine sogenannte "intelligente Tabelle"
Wenn Du nun z.B. nach Gerhard filterst (Spalte("M")).
Dann in Spalte("J") nach True filterst werden Dir alle Deine Wünsche erfüllt.
Tabelle1

 ABCDEFGHIJKLMN
1Ökodatenbank  8    Gesamt-Anzahl (TRUE):5    
2… 1… 2… 3Strecke in km… 5… 6… 7… 8… 9Auto genommen… 11… 12Name des Bürgers… 14
6   7     TRUE  Gerhard 
7   1     TRUE  Gerhard 
12              


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Du kannst aber auch für Spalte("J") Teilergebnis benutzen.
Tabelle1

 ABCDEFGHIJKLMN
1Ökodatenbank  8    Gesamt-Anzahl(Filter)2    
2… 1… 2… 3Strecke in km… 5… 6… 7… 8… 9Auto genommen… 11… 12Name des Bürgers… 14
6   7     TRUE  Gerhard 
7   1     TRUE  Gerhard 
12              

Formeln der Tabelle
ZelleFormel
D1=TEILERGEBNIS(9;Tabelle1[Strecke in km])
J1=TEILERGEBNIS(3;Tabelle1[Auto genommen])


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8


https://www.herber.de/bbs/user/132949.xlsx
Gruß Matthias
Anzeige
AW: mit Teiilergebnis (ohne VBA)
05.11.2019 07:33:46
Sven
Danke für die Antwort.
Allerdings hätte ich es trotzdem gern als Makro. Einerseits wegen der Benutzerfreundlichkeit und andererseits weil ich die Werte ja nach gewünschten Namen berechnen will. Z. B. sollen mit alle TRUE-Werte für Gerhard gezeigt werden und später dann für Person XY. Mit den Formeln so kann ich das leider nicht machen.
Anzeige
AW: mit Teiilergebnis (ohne VBA)
05.11.2019 11:37:10
Werner
Hallo Sven,
wie kommst du denn zu dieser Aussage? Da muss ich mal annehmen, dass du dir die Beispielmappe nicht wirklich angeschaut hast.
Filter nach Gerhard und dir wird die Summe von Gerhard angezeigt - Filter nach xy und dir wird die Summe von xy angezeigt.
Und was da jetzt per Makro benutzerfreundlicher sein soll erschließt sich mir auch nicht.
Gruß Werner
Anzeige
genau und erklärt hab ich es ihm auch ... owT
05.11.2019 15:35:43
Matthias
AW: Addieren von TRUE-Werten
05.11.2019 13:28:15
TRUE-Werten
Hi
das geht einfacher ohne Makro.
1. verküpfte das DropDown-Feld (Combobox) der Userform über die Eigenschaft ControlSource mit einer Ausgabezelle, dies kann irgendeine freie Zelle sein ggf auch auf einem anderen Blatt. (Zelladresse mit Tabellenblatt eintragen: Tabelle1!A1)
2. Berechne das Ergebnis mit SummeWenns in einer weiteren Zelle (A1 sei die Ausgabezelle des DropDown):
=SummeWenns(D:D;J:J;WAHR;M:M;A1)
3. um das Ergebnis in der Userform anzueigen zu lassen, verwendest du eine Listbox und gibst bei RowSource die Zelle mit der SummeWenns-Formel an.
Gruß Daniel
Anzeige
Hinweis: In VBA entspricht TRUE -1, in Excel +1
05.11.2019 19:43:08
lupo1
zeig bitte mal ein VBA-Bsp mit Erg: -1
06.11.2019 17:42:02
Matthias
Hallo
Für mich ist True = WAHR und FALSE = FALSCH
also 1 und 0
zeig bitte mal ein VBA-Bsp mit Erg: -1
damit ich verstehe was Du meinst.
Gruß Matthias
voilá
06.11.2019 23:59:19
lupo1
Sub TrueFalse() MsgBox "TRUE = " & --(2 = 2) & ", FALSE = " & --(2 = 3) End Sub
Anzeige
ok, Danke ... owT
07.11.2019 16:24:28
Matthias
AW: zeig bitte mal ein VBA-Bsp mit Erg: -1
07.11.2019 09:45:14
Daniel
Hi
das ganze wird dann relevant, wenn du die Wahrheitswerte WAHR und FALSCH nicht als WAHRHEITSWERTE verwendest, sondern als normale Zahlen in Berechnungen einsetzt
dann arbeiten die impliziten Typumwandlungen von Excel und VBA unterschiedlich.
in Excel wird ein WAHR zu 1 und ein VBA zu -1.
das liegt daran, dass VBA nicht mit Einzelbits arbeitet, sondern mit ganzen "Bytes" und bei WAHR alle Bits im Byte setzt.
ein Binärwärt bei dem alle Bits gesetzt sind, steht aber für die größte negative Zahl, da das erste Bit immer das Vorzeichenbit ist und ein gesetztes Bit für eine negative Zahl steht.
Und die größte negative Zahl ist -1
Gruß Daniel
Anzeige
;
Anzeige

Infobox / Tutorial

Addieren von TRUE-Werten in Excel


Schritt-für-Schritt-Anleitung

  1. Erstelle eine Userform mit einem Drop-Down (ComboBox), um den Namen des Bürgers auszuwählen.
  2. Verknüpfe die ComboBox über die Eigenschaft ControlSource mit einer Ausgabezelle auf deinem Arbeitsblatt (z.B. Tabelle1!A1).
  3. Berechne die Summe der TRUE-Werte mithilfe der Funktion SUMMEWENNS. In einer anderen Zelle (z.B. B1) fügst du folgende Formel ein:
    =SUMMEWENNS(D:D; J:J; WAHR; M:M; A1)

    Hierbei wird die Spalte D addiert, wenn die Spalte J den Wert WAHR (TRUE) hat und die Spalte M den ausgewählten Namen enthält.

  4. Zeige das Ergebnis in der Userform an, indem du eine ListBox hinzufügst. Setze die RowSource der ListBox auf die Zelle mit der SUMMEWENNS-Formel.
  5. Füge einen Button hinzu, um die Berechnung zu starten, falls du VBA verwenden möchtest.

Häufige Fehler und Lösungen

  • Fehler: Die Formel gibt nicht das erwartete Ergebnis zurück.

    • Lösung: Stelle sicher, dass die Referenzen in der SUMMEWENNS-Formel korrekt sind. Überprüfe auch, ob die Werte in den Spalten J und M korrekt als WAHR oder FALSCH eingegeben wurden.
  • Fehler: Die Userform zeigt keinen Wert an.

    • Lösung: Überprüfe die RowSource der ListBox und stelle sicher, dass sie auf die richtige Zelle zeigt, in der die SUMMEWENNS-Formel steht.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch die Filterfunktion in Excel nutzen:

  1. Erstelle eine intelligente Tabelle mit deinen Daten.
  2. Filtere nach dem Namen des Bürgers in der Spalte, die die Namen enthält (z.B. Spalte M).
  3. Filtere die Spalte mit dem TRUE-Wert (z.B. Spalte J) nach WAHR.
  4. Verwende die Funktion TEILERGEBNIS, um die Summe der gefilterten Werte zu berechnen:
    =TEILERGEBNIS(9; D:D)

Praktische Beispiele

Angenommen, du hast folgende Daten in deiner Tabelle:

Strecke in km Auto genommen Name des Bürgers
10 TRUE Gerhard
20 FALSE Gerhard
5 TRUE Marianne
15 TRUE Gerhard

Wenn du nun die Schritte in der Schritt-für-Schritt-Anleitung befolgst, wird die SUMMEWENNS-Formel für Gerhard die Werte 10 und 15 addieren und dir 25 zurückgeben.


Tipps für Profis

  • Wenn du regelmäßig mit großen Datenmengen arbeitest, kann es sinnvoll sein, die Daten in Arrays zu verarbeiten. So kannst du die Berechnungszeit erheblich verkürzen.
  • Nutze die Tastenkombination Strg + T, um schnell eine intelligente Tabelle zu erstellen, die dir beim Filtern und Sortieren hilft.
  • Experimentiere mit den Funktionen AGGREGAT und TEILERGEBNIS, um spezialisierte Berechnungen durchzuführen, ohne die Filter zu entfernen.

FAQ: Häufige Fragen

1. Frage: Kann ich auch andere Bedingungen in die SUMMEWENNS-Formel einfügen?
Antwort: Ja, du kannst beliebig viele Bedingungen hinzufügen, indem du weitere Bereiche und Kriterien in die Formel einfügst.

2. Frage: Funktioniert das auch in älteren Excel-Versionen?
Antwort: Die SUMMEWENNS-Funktion ist ab Excel 2007 verfügbar. In älteren Versionen musst du möglicherweise andere Methoden wie SUMMEWENN verwenden.

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