Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1364to1368
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

prozentualer Anteils aus gefilterten Daten

prozentualer Anteils aus gefilterten Daten
03.06.2014 16:53:36
Vigo
Hallo zusammen!
Ich hätte gerne einen Denkanstoß oder einen Tipp zu folgendem Thema:
Wie kann man die prozentuale Verteilung der gefilterten Daten ermitteln? Also wie oft kam der gefilterte Wert unter den insgesamt gefilterten Werten, die den Kriterien entsprachen, vor?
Ich hab schon diesen Ansatz gefunden:
Set rngfilter = .Offset(0, 1).Resize(.Rows.Count - 1, 1) _
.SpecialCells(xlCellTypeVisible)
Hier wird aber ermittelt, wie wiele Werte insgesamt gefunden wurden, die den Kriterien entsprachen.
Ich weiß grad nicht so recht, wie ich da vorgehen soll. Lässt sich das in einem Schritt lösen? Oder muss ich erst ermitteln wie viele Werte insgesamt den Kriterien entsprachen und dann halt wie oft die aufgeführten Werte unter den gefilterten Werten vorkamen?
Hab mich gefragt, ob das nicht einfach über eine Excel-Formel zu lösen wäre (so in etwas):
=summenprodukt(teilergebnis(3;indirekt(Datenzusammenführung!("M" & Zeile(2:999)))) *(Datenzusammenführung!M2:M999="H1"))/teilergebnis(3;Datenzusammenführung!M2:M999)
Diese Formel bekomme ich leider aber nicht richtig umgesetzt...Ich glaube der fett geschriebene Teil ist falsch!
Eine Formel wäre aber glaub ich am einfachsten oder? Würde diese anschließend in einen VBA- Code einbauen wollen. Bei H1 handelt es sich um eine Bezugszelle, weil vorher nicht bekannt ist, welcher Wert rüberkopiert wird.
Hat jemand vielleicht eine Idee?
Viele Grüße, Vigo

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

Betreff
Datum
Anwender
Anzeige
warum ...
03.06.2014 17:02:54
der
Hallo vigo,
... ermittelst Du den Wert nicht in Deiner Tabelle mit der gefilterten Liste:
(ungetestet:) =Summenprodukt(teilergebnis(3;indirekt("M" & Zeile(2:999)))) *(M2:M999="H1"))/Teilergebnis(3;M2:M999)
und holst das Ergebnis mit einfachen bezug in die Zieltabelle?
Es könnte aber auch (ungetestet) folgendes gehen:
=summenprodukt(teilergebnis(3;indirekt("Datenzusammenführung!M" & Zeile(2:999)))) *(Datenzusammenführung!M2:M999="H1"))/teilergebnis(3;Datenzusammenführung!M2:M999)
gehen. Teste mal.
Gruß Werner
.. , - ...

AW: warum ...
03.06.2014 17:27:50
Vigo
Hallo Werner!
Bei beiden Varianten wird mir gesagt, dass ein Fehler in der Formel ist....
Aber danke für den Tipp mit dem Bezug, das behalte ich mal im Hinterkopf!
VG, Vigo

Anzeige
AW: warum ...
03.06.2014 17:37:59
Vigo
Ich hab nun mal das hier probiert:
=SUMMENPRODUKT((TEILERGEBNIS(3;INDIREKT("M" & ZEILE(M2:M999)))=1) *(M2:M999=Hintergrundtabelle1!J12) *1)/TEILERGEBNIS(3;M2:M999) 
Diese Formel funktioniert... Scheinbar! Siegibt mir ein falsches Ergebnis aus! Ein Zellbezug für den zu vergleichenden Wert ist doch möglich oder? Ich bin verwirrt^^

AW: warum ...
03.06.2014 17:42:43
Vigo
Auch wenn ich den Wert der Zelle eingebe, kommt leider immer noch das falsch Ergebnis raus. Daran kanns also nicht liegen...

aber ...
03.06.2014 17:59:13
der
Hallo Vigo,
... mein korrigierte Formel (in der Quelltabelle) sah anders aus.
Gruß Werner
.. , - ...

Anzeige
falsche Klammersetzung ...
03.06.2014 17:40:02
der
Hallo Vigo,
... so sollte es gehen
=SUMMENPRODUKT(TEILERGEBNIS(3;INDIREKT("M" & ZEILE(2:999))) *(M2:M999="H1"))/TEILERGEBNIS(3;M2:M999)
Gruß Werner
.. , - ...

AW: falsche Klammersetzung ...
03.06.2014 17:59:19
Vigo
Vielen Dank! Das funktioniert!

AW: falsche Klammersetzung ...
03.06.2014 18:41:24
Vigo
Könntet ihr mir hier noch einmal helfen:
Ich hab nun versucht das Ganze in einem Code umzusetzen und das ist dabei entstanden:
For r = 12 To lol
If Range("J" & r)  "" Then
Set c = .Find(Range("J" & r), LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
Sheets("Datenzusammenführung").Range("v2").FormulaR1C1 = _
"=SUMPRODUCT(SUBTOTAL(3,INDIRECT(""M"" & ROW(R:R[997]))) *(RC[-9]:R[997]C[-9]=c))/ _
SUBTOTAL(3,RC[-9]:R[997]C[-9])"
Sheets("Hintergrundtabelle1").Range(c.Offset(0, 1)).FormulaR1C1 = "= _
Datenzusammenführung!R[-10]C[11]"
End If
End If
Next r
Die hervorgehobenen Zeilen weisen einen Fehler auf (Laufzeitfehler 1004: Anwendungsfehler...)
Wie macht man so etwas richtig?
VG, Vigo

Anzeige
AW: falsche Klammersetzung ...
03.06.2014 19:49:02
Vigo
Ich hab das Ganze mal so abgeändert:

With Worksheets("Hintergrundtabelle1")
lol = Cells(Rows.Count, 10).End(xlUp).Row
For r = 12 To lol
If Range("J" & r)  "" Then
'With Range("J" & r + 1 & ":J" & lol + 1)
Set c = .Find(Range("J" & r), LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
Worksheets("Datenzusammenführung").Range("v2").FormulaR1C1 = _
"=SUMPRODUCT(SUBTOTAL(3,INDIRECT(""M"" & ROW(R:R[997]))) *(RC[-9]:R[997]C[- _
9]=c))/SUBTOTAL(3,RC[-9]:R[997]C[-9])"
c.Offset(0, 1).FormulaR1C1 = "=Datenzusammenführung!R[-10]C[11]"
End If
'End With
End If
Next r
End With
In der hervorgehobenen Zeile taucht der Laufzeitfehler 438: Objekt unterstützt dieses Eigenschaft oder Methode nicht. Wenn man mit der Maus über die Zeile geht, dann wird auch c=nothing angezeigt, was dann wohl so viel bedeutet wie, dass er den Inhalt nicht erkennt (Format des Inhalts ist jedoch Standard). Hat jemand eine Idee, was ich da machen kann?
VG, Vigo

Anzeige
zusätzliche VBA Frage ... Thread offen ..
04.06.2014 08:34:59
der
Hallo Vigo,
... aus VBA Fragen halte ich mich heraus. Ich hab den Thread deswegen wieder auf offen gestellt.
Gruß Werner
.. , - ...

AW: zusätzliche VBA Frage ... Thread offen ..
04.06.2014 08:38:08
Vigo
Hallo Werner! Kein Problem, trotzdem danke für deine Hilfe!

Thread wieder offen ..
04.06.2014 08:45:29
der
Hallo Vigo,
... durch Deine Antwort, und das Nichtsetzens des Häkchens hast Du den Thread wieder als "laufend" oder "beantwortet" gesetzt. Nun ist er wieder als offen gekennzeichnet und Du soltest einfach nur etwas abwarten.
Gruß Werner
.. , - ...

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige