Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
960to964
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
960to964
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zählenwenn über mehere Sheets

Zählenwenn über mehere Sheets
16.03.2008 15:27:53
Matthias.G.
Hallo zusammen,
habe 12 Monatsblätter wo ich gerne den genommenen Urlaubsanspruch abfragen möchte.
Ich habe dazu eine weiteres Tabellenblat gemacht und diese Formel eingegeben aber Ergebnis = #Wert
hilft mir nicht weiter , habt ihr ne Lösung?
oder auch als VBA
=ZÄHLENWENN(Januar:Dezember!F11:AJ11;"T")

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

Betreff
Datum
Anwender
Anzeige
AW: Zählenwenn über mehere Sheets
16.03.2008 15:34:00
Daniel
HI
ich weiß auch nicht, ob ZählenWenn über mehrere Blätter funktioniert, aber zur Not kannst du doch auch einfach die Monatswerte zusammenaddiieren:
=ZÄHLENWENN(Januar!F11:AJ11;"T")+...+ZÄHLENWENN(Dezember!F11:AJ11;"T")
Gruß, Daniel

AW: Zählenwenn über mehere Sheets
16.03.2008 15:40:00
jockel
hi, ich habe noch folegenden nachtrag: Dazu müssen die Tabellennamen durchnummerierbar sein
also würde ich ZÄHLEWENN() auf den jeweiligen seiten durchführen und dann mit: http://www.excelformeln.de/formeln.html?welcher=206 arbeiten, weil: "Die Tabellen müssen nicht numeriert sondern können beliebig getauft sein!
=SUMME(JensF:WF!A2) summiert alle A2 in den Tabellen, die dazwischen liegen (inklusive den beiden)"
cu jörg

Anzeige
AW: Zählenwenn über mehere Sheets
16.03.2008 15:57:00
Matthias.G.
Danke Daniel u. Jockel,
leider bekomme ich es nicht hin,
{=SUMME(ZÄHLENWENN(INDIREKT("Tabelle"&ZEILE(4:15)&"!1:65536");"T"))}
Blätter Januar bis Dezember sind = Tabelle 4-15
so bekomme ich auch kein Ergebnis,
Suche auch eine VBA Lösung,
Danke nochmals...

@ Matthias
16.03.2008 16:24:00
jockel
hi, wenn die tabellenblätter "Januar" bis "Dezember" heißen, kannst du ja auch so kein ergebnis bekommen, weil sie dann ja nicht durchnummeriert sind...! aber wenn du eh keine formellösung sondern eine via VBA suchst macht mein alternativvorschlag leider auch keinen sinn (sonst schon...)
cu jörg

Anzeige
AW: Zählenwenn über mehere Sheets
16.03.2008 18:37:32
Renee
Hi Matthias,
Es geht auch als MatrixFormel:

{=SUMME(ZÄHLENWENN(INDIREKT(TEXT(DATUM(2006;ROW(1:12);1);"MMMM")&"!F11:AJ11");"T"))}


{} nicht eingeben, Formel mit Ctrl-Shift-Enter abschliessen
GreetZ Renée

Oops translation error
16.03.2008 18:52:00
Renee
... natürlich so:

{=SUMME(ZÄHLENWENN(INDIREKT(TEXT(DATUM(2006;ZEILE(1:12);1);"MMMM")&"!F11:AJ11");"T"))}


Renée

AW: Oops translation error
17.03.2008 19:57:00
jockel
hi Renée, sehr interessante variante - habe sie soeben erfolgreich ausprobiert!!! und sie in meinen formelbestand aufgenommen :)))
cu jörg

Anzeige
Danke, für die Rückmeldung
17.03.2008 22:18:00
Renee
hi Jörg,
Freut mich, dass ich was zu deinem Formelbestand beitragen konnte.
GreetZ Renée
P.S. Ich wünsche mir auch mal einen Formel- und VBA-Bestand, von all dem Zeug's, das ich hier schon in diese Forum gestellt habe... aber leider fehlt mir die Zeit dazu ;-)

AW: Zählenwenn über mehere Sheets
16.03.2008 19:45:38
Daniel
Hi
ich hätte hier eine VBA-Lösung (als benutzerdefinerte Funktion)
1. Parameter: der zu untersuchende Zellbereich im ersten Tabellenblatt
2. Parameter: der zu untersuchende Zellbereich im letztten Tabellenblatt
3. Parameter: der Suchbegriff

Public Function ZählenWennÜberTabellenblätter(Bereich As Range, _
Bereich2 As Range, _
Suchbegriff As String) As Long
Dim i As Long, von As Long, bis As Long
Dim Erg As Long
Dim Addr As String
Addr = Bereich1.Address
von = WorksheetFunction.Min(Bereich1.Parent.Index, Bereich2.Parent.Index)
bis = WorksheetFunction.Max(Bereich1.Parent.Index, Bereich2.Parent.Index)
For i = von To bis
Erg = Erg + WorksheetFunction.CountIf(Sheets(i).Range(Addr), Suchbegriff)
Next
ZählenWennÜberTabellenblätter = Erg
End Function


die Funktion in Excel würde dann so aussehen:


=ZählenWennÜberTabellenblätter(Januar!F11:AJ11;Dezember!F11:AJ11;"T")


gezählt werden alle Ts im angebenen Zellbereich in den Tabellenblättern, die zwischen Blatt "Januar" und Blatt "Dezember" liegen.
eine Einschränkung dabei ist allerdings, daß sich die Funktion nicht aktualisiert, wenn in den Blättern "Februar" bis "November" ein Wert eingegeben wird, da Excel bei diesen Blättern ja nicht erkennen kann, daß diese Funktion davon betroffen ist.
auch das Einfügen von Application.Volatile hilft nicht viel, da es nur auf dem gleichen Tabellenblatt funktioniert
Gruß, Daniel

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige