Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zählenwenn über mehere Tabellen

1,597 views
Skip to first unread message

Gerhard Burn

unread,
Jan 29, 2007, 8:34:30 AM1/29/07
to
Hallo

ich versuche ein Zählenwenn über mehrere Tabellen, dabei erscheint aber
immer der Fehler #Wert!
Ich suche nach dem Eintrag BU

Auf nur einer Tabelle funktioniert es:
=ZÄHLENWENN(B6:AF6;"BU")

Auf mehreren Tabellen funktioniert es nicht mehr:
=ZÄHLENWENN('1:3'!B6:AF6;"BU")

Vielen Dank für deine Hilfe
Gerhard


Thomas Ramel

unread,
Jan 29, 2007, 9:55:38 AM1/29/07
to
Grüezi Gerhard

Gerhard Burn schrieb am 29.01.2007

> ich versuche ein Zählenwenn über mehrere Tabellen, dabei erscheint aber
> immer der Fehler #Wert!
> Ich suche nach dem Eintrag BU
>
> Auf nur einer Tabelle funktioniert es:
> =ZÄHLENWENN(B6:AF6;"BU")
>
> Auf mehreren Tabellen funktioniert es nicht mehr:
> =ZÄHLENWENN('1:3'!B6:AF6;"BU")

ZÄHLENWENN() kann nicht 3-dimensional eingesetzt werden, sondern nur auf
einem Tabellenblatt alleine.

Du kannst die folgende Benutzerdefinierte Funktion verwenden, die letztlich
nitchts anderes tut, als ZÄHLENWENN() auf jedes der gewünschten
Tabellenblätter anzuwenden und die Werte am Ende zu summieren:

Public Function ZählenWennTabellen(Tab1 As String, _
Tab2 As String, _
Bereich As Range, _
Suchkriterium As String) As Double

t.r...@mvps.org / 09.01.2005
'Funktion zur Anwendung von ZÄHLENWENN() über mehrere Tabellenblätter
'Mit angegeben werden die Tabellenblattnamen von...bis,
'sowie die üblichen Parameter für ZÄHLENWENN()
'Zur automatischen Aktualisierung im Tabellenblatt den folgenden Term
'anhängen: +(0*JETZT()) und F9 drücken
'Also z.B. wie folgt:
=ZählenWennTabellen("Tab1";"Tab2";A1:A10;A1)+(0*JETZT())

Dim intI As Integer
Dim intJ As Integer
Dim intTab As Integer
Dim Wert As Double

If Suchkriterium = "" Then
ZählenWennTabellen = 0
Exit Function
End If

intI = Worksheets(Tab1).Index
intJ = Worksheets(Tab2).Index

For intTab = intI To intJ
Set Bereich = ActiveWorkbook.Worksheets(intTab) _
.Range(Bereich.Address)
Wert = Wert + Application.WorksheetFunction.CountIf _
(Bereich, Suchkriterium)
Next intTab
ZählenWennTabellen = Wert
End Function

Mit freundlichen Grüssen
Thomas Ramel (@work)

--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-1]
Microsoft Excel - Die ExpertenTipps tinyurl.com/cmned

Alexander Wolff

unread,
Jan 29, 2007, 10:15:17 AM1/29/07
to
http://excelformeln.de/formeln.html?welcher=235
mit der dort vergessenen Erweiterung aus
http://excelformeln.de/formeln.html?welcher=234
(Tabellennamen beliebig)
--
Moin+Gruss Alexander - MVP for MS Excel - www.xxcl.de - mso2000sp3 --7-2


Peter Schürer

unread,
Jan 30, 2007, 1:40:02 AM1/30/07
to
Hallo Gerhard,

"Gerhard Burn" <gerhar...@hotmail.ch> schrieb im Newsbeitrag
news:45bdf7e6$0$148$fb62...@newsspool.solnet.ch...

versuche es doch mal so:

=ZÄHLENWENN(Tabelle2!B6:AF6;"BU")+ZÄHLENWENN(Tabelle3!B6:AF6;"BU") ...

Sollten einmal die Bereiche angepaßt werden ist es zwar etwas umständlich,
aber es funktioniert ;-)

MfG
Peter


0 new messages