Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
172to176
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
172to176
172to176
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA-Lösung für Teilergebnis

VBA-Lösung für Teilergebnis
22.10.2002 15:58:52
Martin
Hallo Leute,

ich habe in meiner Tabelle mehrere Datensätze, eingeteilt in unterschiedliche Kategorien. Der AutoFilter ist aktiviert.
Am Ende der Tabelle habe ich in einer Zelle folgende Formel:

=SUMMENPRODUKT((TEIL(I2:I80;5;1)="9")*K2:K80)

Diese Formel rechnet mir alle Beträge von Zellen in Spalte K zusammen, welche eine 9 als fünfte Stelle in der Spalte I haben.

Nun möchte ich, wenn der AutoFilter aktiviert wird, am Ende der Tabelle auch nur den Wert der eingeblendeten Datensätze haben.
Leider funktioniert das nicht. Und da die Formel "Teilergebnis" dummerweise nicht mit Summenprodukt läuft, muss ich immer auf recht umständlichen Wege auf mein gewünschtes Ergebnis hinarbeiten.

Ich habe schon mal eine ähnliche Problematik gepostet, und mir wurde von Formeln und Funktionen im herkömmlichen Sinne abgeraten. Ich sollte vielmehr eine VBA-Lösung finden.
Leider habe ich davon überhaupt keinen Plan.

Daher bitte ich um Hilfe für mein Problem.
Ich freue mich über jeden Ratschlag.

Mfg,
Martin

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: VBA-Lösung für Teilergebnis
24.10.2002 23:22:51
RALF
'n abnd,

versuchs damit:
eine eigene Formel, die im Bereich das Kriterium sucht, wenn es gefunden wird, dann multiplikation mit einem Element z spalten weiter (gleiche Zeile)
in VBA-Modul:

Function priv_SP (Bereich as Range, z as Integer)

priv_SP =0
for each zelle in Bereich
if Mid(zelle, 5, 1)="9" then priv_SP = priv_SP + zelle * cells(zelle.row,zelle.column + z)
next

End Function


ins Arbeitsblatt dann die Formel (wenn in Spalte A der zu suchende Wert steht und der suchende Wert steht und der zu multiplizierende 3 Spalten weiter (also Spalte D)
=priv_SP("A2:A85";3)

(wenn Spalten vor dem Bereich stehen, dann z als Minuswert definieren)

Gruß RALF

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige