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

Zählenwenn über mehrere Tabellenblätter

Zählenwenn über mehrere Tabellenblätter
14.01.2003 19:18:48
BioMel
Hallo,

ich habe folgendes Problem:

mehrere Tabellenblätter in deren erster Spalte 4stellige Nummern stehen.
In einem Ergebnistabellenblatt soll (wenn möglich sogar unter Bedingungen) aufgelistet werden, wie oft jede 4stellige Nummer in den vorhergehenden Tabellenblättern genannt wurde.

Zählenwenn läuft meines Wissens nicht über mehrere Blätter, was kann ich tun?

Vielen Dank für die Hilfe,

Melanie

P.S.: Es betrifft Excel für Mac, aber das solte wohl keinen großen Unterschied machen...

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Sollte doch funktionieren mit
14.01.2003 19:22:41
Boris
=ZÄHLENWENN(A:A;"Hallo")+ZÄHLENWENN(Tabelle2!A:A;"Hallo")+ZÄHLENWENN(Tabelle3!A:A;"Hallo")

Gruß Boris

Re: Sollte doch funktionieren mit
14.01.2003 20:10:04
Melanie
Tut es im Prinzip auch.

Ich suche nur nach einer eleganten Lösung, mit der das Einfügen von weiteren Tabellenblättern leichter ist. So müßte ich bei ca. 30 Formeln den Verweis auf das neue Datenblatt ändern.

Trotzdem Danke,
Melanie

Keine weitere Idee...
14.01.2003 21:04:26
Boris
Hallo Melanie,

mit SUMME ist das ja kein Problem. Aber mit SUMMEWENN oder ZÄHLENWENN oder SUMMENPRODUKT etc. funzt es leider über mehrere Blätter nicht.

Vielleicht hat nich jemand anderes eine Idee.

Gruß Boris

Re: Zählenwenn über mehrere Tabellenblätter
14.01.2003 21:30:32
L.Vira
Wie wärs mit einer freundlichen kleinen Schleife über alle Tabellen?

Anzeige
Re: Zählenwenn über mehrere Tabellenblätter
14.01.2003 21:57:07
Melanie
Und wie geht das?
So gut kenne ich mich dann doch nicht aus.

Melanie

Re: Zählenwenn über mehrere Tabellenblätter
14.01.2003 22:03:59
L.Vira
Ich hab jetzt erst deinen Zusatz gelesen, dass es für einen Mac ist. Ich weiß nun nicht, ob die Syntax da identisch ist, aber probieren kann ja nix schaden.
Annahme: deine zu zählenden Begriffe stehen in Tabelle1, Spalte A
In Spalte B werden die Anzahlen jeweils danebengeschrieben. Die erste Schleife geht die Begriffe durch, die innere Schleife geht
alle Blätter durch, die nicht Tabelle1 heißen:

Option Explicit
Sub Zählenwenn_Sheets()
Dim WS As Worksheet, WS1 As Worksheet, ZW As Long, S As Integer
Dim Z As Long, LZ As Long, SB As Variant, SumZW As Long
Set WS1 = Sheets("Tabelle1")
LZ = WS1.[a65536].End(xlUp).Row
For Z = 1 To LZ
SB = WS1.Cells(Z, 1)
For S = 1 To Worksheets.Count
If Not Sheets(S).Name = WS1.Name Then
Set WS = Sheets(S)
ZW = WorksheetFunction.CountIf(WS.[a:a], SB)
SumZW = SumZW + ZW
WS1.Cells(Z, 2) = SumZW
End If
Next
SumZW = 0
Next
Set WS = Nothing
Set WS1 = Nothing
End Sub

Feedback wäre nicht schlecht, wegen der Mac- Geschichte.

Anzeige
Re: Keine weitere Idee...
14.01.2003 22:11:27
Nepumuk
Hallo Melanie,
die Formeln ließen sich aber automatisch mit einer Workbook_SheetSelectionChange-Routine an die Anzahl der vorhandenen Tabellen anpassen.
Beispiel:

Gruß
Nepumuk
Re: Zählenwenn über mehrere Tabellenblätter
14.01.2003 22:36:33
Melanie
Wunderbar, danke.

Feedback kommt morgen. Der Mac steht im Büro, ich kann´s also erst dort ausprobieren.

Re: Keine weitere Idee...
14.01.2003 22:38:21
Melanie
Hallo Nepumuk,

Dir auch ein DANKE!
Wie gesagt: morgen wird´s ausprobiert.

Gruß,
Melanie

Re: Keine weitere Idee...
14.01.2003 22:45:55
L.Vira
Ganz schön raffiniert, aber ich versteh das nicht ganz. Habs mal getestet und folgendes Ergebnis:
{=SUMME(ZÄHLENWENN(INDIREKT("Tabelle"&ZEILE(1:3)&"!1:65536");"Hallo"))}

In der zelle steht #BEZUG

Kannst du mir das mal bitte interpretieren?

Anzeige
Re: Keine weitere Idee...
14.01.2003 22:52:01
Nepumuk
War ja auch nur als Beispiel gedacht, du brauchst nur ein Blatt, das nicht Tabelle heißt, sons gibt's einen Zirkelbezug.
Re: Keine weitere Idee...
14.01.2003 22:54:25
L.Vira
Hab ich ja, kam ja auch nix mit Zirkelbezug.
Was bedeutet das mit Zeile(1:3)
Re: Keine weitere Idee...
14.01.2003 22:58:49
Nepumuk
Das ist der Verweis auf die Blätter Tabelle1 / Tabelle2 / Tabelle3
Danke, jetzt hats geklickt...oT
14.01.2003 23:09:46
L.Vira
oT
Re: Keine weitere Idee...
15.01.2003 08:38:49
Melanie
Hallo Nepumuk,

jetzt habe ich das Problem, daß ich nicht sicher bin ob das richtig ist was ich hier mache.
Also ich habe in Excel mittels VBS ein Modul mit dem Namen Workbook_Open und eins mit dem Namen Workbook_SheetSelectionChange erstellt und den Code dort eingegeben.

Und nun?

Bitte helft mir nochmal und erklärt es einem Anfänger!

Melanie

Anzeige
Brauche noch ein bißchen mehr Hilfe
15.01.2003 09:27:02
Melanie
Hallo,

mein Problem ist, daß ich (wie unten beschrieben) nicht so genau weiß wie ich das jetzt in Excel einbauen muß.

für weitere Hilfe wäre ich dankbar.

Re: Keine weitere Idee...
15.01.2003 09:28:06
Nepumuk
Hallo Melanie,
der Code kommt in das Klassenmodul "Diese Arbeitsmappe". Er funktioniert aber nur, wenn die Tabellenblätter die Namen Tabelle1 bis Tabelle?? tragen und die Tabelle in die die Formeln eingetragen wird z.B. Blatt heißt. Das ganze war aber nur als Beispiel gedacht und lässt sich natürlich auf deine Bedüfnisse anbassen. Dazu hatte ich aber zu wenig Informationen. Darum brauche ich die genaue Bezeichnung der Tabelle, auf der die Formeln stehen und deren genaue Position sowie die Position des Suchbegriffes. Außerdem die Namen der Tabellenblätter die durchsucht werden müssen und die Angabe in welcher Zeile bzw. Spalte gesucht werden soll.
Gruß
Nepumuk
Anzeige
Re: Brauche noch ein bißchen mehr Hilfe
15.01.2003 09:44:23
Nepumuk
Hallo Melanie,
auch hier das selbe Problem, der Tabellenname der Suchbegriffe und deren Position und die Ausgabeposition der gefundenen Anzahl sowie die Zeile bzw. Spalte die dursucht werden soll. Der code kommt in ein normales Modul. Das geht so: Mit der Tasenkombination Alt+F11 in den VBA-Editor wechseln. Im Menü Einfügen den Eintrag Modul anklicken. In das sich öffnede Blatt den Code von L.Vira kopieren und den Editor mit der Tastenkombination Alt+Q schliessen. Nun musst du nur noch mit der Tasenkombination Alt+F8 das Modul aufrufen und auf ausführen klicken.
Gruß
Nepumuk
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige