Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zählenwenn Bereich ohne doppelte Werte einer Zeile
#1
Ich habe eine Frage bezüglich einer Formel zum Zählen eines Bereichs mit einem bestimmten Wort in der Zelle.

Meine Formel ist =ZÄHLENWENN(A1:Z200;="ja")

das gibt dann z.B 100.

Jetzt habe ich aber z.B in einer Zeile mehrmals "ja" in mehreren Zellen stehen. 

Wie kriege ich das hin, dass Excel mir jedes "ja" einer Zeile nur 1x zählt? 

Also pro Spalte ist egal aber pro Zeile soll Excel nur 1x das "ja" zählen. 

Ist das verständlich? 


Beste Grüße  17
Antworten Top
#2
Hallo B...,

z.B. so:

=SUMME(--(MMULT(--(A1:Z200="ja");MTRANS(SPALTE(A1:Z1)))>0))
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





[-] Folgende(r) 3 Nutzer sagen Danke an Ego für diesen Beitrag:
  • RPP63, Beauder, echo
Antworten Top
#3
Moin!
Edit:
Sehr schön, Helmut!

Mache eine Hilfsspalte ab AA1:AA200
=WENN(ZÄHLENWENN(A1:Z1;"ja");"ja";"")
Diese wertest Du jetzt mittels 
=ZÄHLENWENN(AA1:AA200;"ja")
aus.
Mal verkürzt:
ABCDEF
1ABCDHS7
2jaja
3jajaja
4jaja
5
6jajaja
7jaja
8
9jajajaja
10jaja

ZelleFormel
F1=ZÄHLENWENN(E:E;"ja")
E2=WENN(ZÄHLENWENN(A2:D2;"ja");"ja";"")

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Beauder
Antworten Top
#4
Vielen Dank für die rasche Antwort!

also das würde bei mir jetzt so aussehen

=SUMMENPRODUKT(--(MMULT(--(Q14:BN1500="ja");MTRANS(SPALTE(Q14:BN14)))>0))


und da kommt bei mir dann #wert raus. 

Wo liegt da der Fehler in meiner(deiner) Formel?
Antworten Top
#5
SPALTE() ist ein Schleifen-Zähler!
Dein Bereich Q:BN umfasst 50 Spalten.
Um die Reihe 1 bis 50 zu erreichen musst Du SPALTE(A1:AX1) nehmen.

Und jetzt darfst Du mal raten, wie ich das so schnell umsetzen konnte …
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Beauder
Antworten Top
#6
Perfekt, vielen Dank!

Hat funktioniert. 

Ich danke vielmals für die schnelle Hilfe.

17
Antworten Top
#7
@Helmut:
Warum nimmst Du statt MTRANS(SPALTE(A1:Z1))
nicht kürzer ZEILE(X1:X4)
?
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#8
Es hat sich ein neues Problem eingeschlichen...

Konnte es mit den Hilfstabellen einrichten. 

Mein Problem ist jetzt, dass wenn zb in Spalte F15 ein "ja" ist und ich den Bereich abfrage und in F17 ein "nein" ist dann möchte ich, dass das "ja" nicht mitgezäht wird. 
Dies soll aber nur geschehen wenn in einer hinteren Spalte der gleichen Zeile ein nein" steht.

Also z.B bei Bereich F10:F20 nur abfragen wenn in der Zeile als letztes ein "ja" steht in einer der Zellen und kein "nein".



Beste Grüße und vielen Dank!  17
Antworten Top
#9
Hallo,

dann wird es langsam Zeit, die überfällige Beispieldatei hochzuladen.
Cadmus
Antworten Top
#10
Hallo,

ihr habt mich abgehängt.

A) zum neuen Problem
Das habe ich nicht verstanden. Weder ist F15 eine Spalte, noch kann man mit zwei Beispielen ohne eine allgemeine Regel eine Formel erstellen.

B) zu
Zitat:Warum nimmst Du statt MTRANS(SPALTE(A1:Z1))
nicht kürzer ZEILE(X1:X4)
Weil ich für die Matritzenmultiplikation einen Vektor benötige, der soviel Zeilen hat wie die Matrix Spalten.


C) zu
Zitat:SPALTE() ist ein Schleifen-Zähler!
Dein Bereich Q:BN umfasst 50 Spalten.
Um die Reihe 1 bis 50 zu erreichen musst Du SPALTE(A1:AX1) nehmen.
Und jetzt darfst Du mal raten, wie ich das so schnell umsetzen konnte …
und
Zitat:Hat funktioniert.
Nein! Ich benötige für die Multiplikation nur einen senkrechten Vektor mit soviel positiven Zahlen, wie die Matrix Spalten hat. Wenn Spalte(A1:AX1) funktioniert muss auch Spalte(Q14:BN14) funktionieren. ps. Was bei mir auch klappt.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste