Anzeige
Archiv - Navigation
1440to1444
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Buchstaben Zählen ab 3 hintereinander

Buchstaben Zählen ab 3 hintereinander
18.08.2015 11:52:28
Björn

Hallo Forum-Gemeinde,
ich bin auf der Suche nach einer Lösung meiner Excel-Herausforderung.
Ich möchte gerne eine Formel, die mir die Summer der Tage mit einem "S" angibt. Allerdings erst ab 3 "S" hintereinander.
Im Beispiel meiner angefügten Datei müsste in der Spalte AH2 eine 3 herauskommen, in AH3 eine 0 und AH4 eine 4.
Wäre schön wenn ihr mir hierbei helfen könntet. Championsleauge wäre natürlich wenn die Formel Wochenende/Feiertage mit berücksichtigen könnte. Wenn man diesen im Vorfeld ein "W" eintragen würde.
Danke für euren Support
https://www.herber.de/bbs/user/99664.xlsx

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buchstaben Zählen ab 3 hintereinander
18.08.2015 12:15:20
JoWE
Hallo Björn,
ohne "Summenprodukt" und nur "Kreisklasse":
=WENN(ZÄHLENWENN(B2:AF2;"S")>2;ZÄHLENWENN(B2:AF2;"S");"0")
Wo und unter welchen Bedingungen ein "W" erscheinen soll ist mir nicht wirklich klar geworden.
Wenn am Wochenende "S" geleistet wurde soll ein "W" erscheinen und dann soll "S" nicht gezählt werden?
Oder was?
Ich lasse Deine Frage mal offen, evtl. haben andere Deine Frage besser verstanden...
Gruß
Jochen

AW: Buchstaben Zählen ab 3 hintereinander
18.08.2015 12:21:32
Björn
Hallo Jochen,
danke für dein schnelle Feedback.
Ich merke gerade das ich mich "etwas" undeutlich ausgedrückt habe.
a) Deine Formel zählt sobald in der Zeile 3 "S" stehen, es darf aber nur wenn mindestens 3
hintereinander vorhanden sind.
b) War meine Überlegung um das Wochenende zu berücksichtigen, ob ich für alle Samstage, Sonntage und
Feiertage ein "W" einsetze, welches bei der obigen Formel berücksichtigt werden kann.
VD
Björn

Anzeige
AW: Werte Zählen ab 3er Block >Werner?
18.08.2015 12:49:39
JoWE
Hallo Björn,
sorry, habe keine Lösung. Stelle wieder auf offen!

AW: nachgefragt ...
18.08.2015 14:20:24
...
Hallo Björn,
... geh ich richtig in der Annahme, dass auch eine zweite bzw. weitere Gruppen von zusammenhängenden mind. 3x"S" mitgezählt werden sollen? Oder?
Allerdings sind Deine Angaben zu den Wochenende und Feiertagen noch nicht eindeutig. Was ist wenn ein "S" am Do,Fr sowie Mo eingetragen ist. Wird das als eine Gruppe gezählt oder nicht?
Unabhängig davon könnten derartige Tage auch nur berücksichtigt werden, wenn in Zeile A1 echte Datumswerte (die dann durchaus mit dem Format TT nur angezeigt werden können) stehen (das ist momentan bei Dir noch nicht der Fall) und zusätzliche eine Feiertagsliste (es reichen die Datumswerte) aufgestellt ist.
Ohne WE/FT und Auswertung wie oben geschrieben z.B. mit folgender Formel:
Tabelle1

 BCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAH
101.02.03.04.05.06.07.08.09.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31. S
2/  --/SSSS--SSS  -- S   -- SSS  10
3--     --     --     --   S S   0
4--     -- SSSS--     --     --  4
5    --     --    /--/    --     0
6/U--     --     --     --   /U- 0
7-UUUUU--/    --   / --     --   0

Formeln der Tabelle
ZelleFormel
AH2=SUMMENPRODUKT(((KKLEINSTE(SPALTE(A1:AF1)*(A2:AF2=AH$1)*(B2:AG2<>"S"); SPALTE(A1:AF1))-KKLEINSTE(SPALTE(A1:AF1)*(A2:AF2<>AH$1)*(B2:AG2="S"); SPALTE(A1:AF1)))>2)*(KKLEINSTE(SPALTE(A1:AF1)*(A2:AF2=AH$1)*(B2:AG2<>AH$1); SPALTE(A1:AF1))-KKLEINSTE(SPALTE(A1:AF1)*(A2:AF2<>AH$1)*(B2:AG2=AH$1); SPALTE(A1:AF1))))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
AW: nachgefragt ...
18.08.2015 16:12:17
Björn
Hi,
super vielen Dank das funktioniert schon mal sehr gut.
Die Datei gibt die Wochenende als "-" und die Feiertage als "/" aus. Wenn ich diese durch ein "W" ersetzen würde, wäre es dann möglich deine Formel anzupassen das diese "W" Zellen ignoriert werden? Denn sie sollen quasi die "S" Tage nicht unterbrechen, aber nicht in der Summe berücksichtigt werden.
vd
björn

AW: meine 1. Frage ist noch eindeutig beantwortet
18.08.2015 16:50:50
...
Hallo Björn
... um es konkret aufzuzeigen, wie viele S sind nachfolgend als Ergebnis auszuwerten? Um es ganz eindeutig zu machen, benenne die Zellen die nicht gezählt werden sollen.
 EFGHIJKLMNOPQRSTUVWXYZAAABACAD
5 --SS SS--S  S/--/SSSS--S 


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
AW: meine 1. Frage ist noch eindeutig beantwortet
18.08.2015 20:45:06
Björn
Hi,
es sollte die Zahl 9 rauskommen. Die Zellen H,I sollen nicht zählen.
VD & VG
Björn

AW: nun ist es eindeutig ... allerdings ...
19.08.2015 09:45:19
...
Hallo Björn,
... ist dazu eine Formellösung recht komplex und nicht in paar Minuten zu lösen. Ich werde es mir aber auf jeden Fall anschauen aber auf keinen Fall vor Morgen.
Gruß Werner
.. , - ...

AW: hier wird mE VBA notwendig ...
20.08.2015 09:44:14
...
Hallo Björn,
... die Aufgabenstellung hat wohl zu viele Bedingungen, als diese mit einer Formel vertretbar (ohne das diese ein Monsterformel wird)lösbar ist. Ich jedenfalls hab auch nach 15 Minuten keinen vernünftigen Formel-Ansatz gefunden. Ich stell deshalb den thread auf offen, weil ich mich aus VBA-Lösungen ganz heraus halte.
Gruß Werner
.. , - ...

Anzeige
dann eben mit VBA
21.08.2015 21:27:36
Michael
Hi zusammen,
ich hab schnell ne UDF gemacht, d.h. eine Funktion, die man im Excel-Sheet in einer Zelle verwenden kann.
Das Ding bitte in ein VBA-Modul stecken ... Option Explicit Public Function WieOft(ByVal r As Range, ByVal s As String, ByVal w As String) Dim c As Range Dim ss As String Dim p As Long If Len(s) 1 Or Len(w) 1 Then WieOft = "#GEHT NET!" Else For Each c In r If (c.Value = s) Then ss = ss & c.Value Else If c.Value w Then ss = ss & "_" End If Next p = InStr(ss, String(3, s)) If p > 0 Then ss = Replace(Mid(ss, p), "_", "") WieOft = Len(ss) Else WieOft = 0 End If End If End Function
... in AI2 so eingeben:
=wieoft(B2:AF2;"S";"W")
und runterkopieren.
In AI5 kommt dann 3 heraus, weil das "W" übersprungen wird.
Spaßhalber mal so: =wieoft(B2:AF2;"S";"Www")
Happy Exceling,
Michael

Anzeige
AW: bedarf aber mE noch Nachbesserung ...
24.08.2015 11:07:58
...
Hallo Michael,
... oder? Sieh mal:
 ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAI
1 01.02.03.04.05.06.07.08.09.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31. S
2Mustermann 1/  --/   S--SSS  --SS SS--S     78
3Mustermann 2--     --     --     --   S S    0
4Mustermann 3--     -- SSSS--    S--S    --  46
5Mustermann 4   S--SS SS--S  S/--/S   --S    60
6Mustermann 5/U--     --     --     --   /U-  0
7Mustermann 6-UUUUU--/    --   / --     --    0

Formeln der Tabelle
ZelleFormel
AI2=wieoft(B2:AF2;"S";"W")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
... naja, mag sein,
24.08.2015 14:45:10
Michael
Werner,
aber so habe ich die Aufgabenstellung gedeutet, daß alles ab dem *ersten* Auftreten von mindestens 3 gezählt werden soll.
Wobei ich zugeben muß, daß ich mich mehr an der Datei
Userbild
orientiert habe - da kommt denn auch kein entsprechender Fall vor, leider.
Aber gut, ich habe mir das Ding nochmal vorgenommen...
Option Explicit
Public Function WieOft2(ByVal r As Range, ByVal s As String, ByVal w As String)
Dim c As Range
Dim buffer As Long
If Len(s)  1 Or Len(w)  1 Then
WieOft2 = "#GEHT NET!"
Else
For Each c In r
If (c.Value = s) Then
buffer = buffer + 1
Else
If c.Value  w Then
If buffer >= 3 Then WieOft2 = WieOft2 + buffer
buffer = 0
End If
End If
Next
End If
End Function

... und auf den Umweg über den String verzichtet; so müßte es auch schneller gehen.
Aber: wir können hier kritisieren (danke) und nachbessern, wie wir wollen, das hilft alles nix, wenn sich der Fragesteller nicht äußert.
Schöne Grüße,
Michael
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige