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

Formel über gefilterte Zeilen

Formel über gefilterte Zeilen
23.11.2022 15:19:11
Angelika
Hallo VBA Profis,
ich hab noch ne Frage, ich habe eine größere Tabelle die ich mit einem Autofilter teilweise gesteuert wird,
ich möchte jetzt über den VK, aber nur für die gefilterten Daten eine Formel drüber laufen lassen, die
nicht sichtbaren Zellen sollen davon unberührt bleiben. In einer normalen Tabelle funktioniert es,
aber in einer Intelligenten-Tabelle leider nicht, berechnet somit auch alle ausgeblendeten Zellen.
Wie kann ich dies mit VBA unterbinden---- ( ICH MÖCHTE NUR DIE ZELLEN BERECHNEN DIE GEFILTERT SIND)
Ich hab dieser Frage mal eine kleine Testdatei beigefügt.
Vielleicht kann mir jemand helfen, besten Dank im Voraus
Grüße
Angelika
https://www.herber.de/bbs/user/156360.xlsm
Kunde Lieferant Rabattgruppe Nettopreis Aufschlag VK Spalte1 Spalte2
10500 Gira A500 5 1,05 5,25 -94,75
10500 Gira A500 5 1,05 5,25 -94,75
10500 Gira A500 5 1,05 5,25 -94,75
10500 Jung A600 6 1,1 6,6 -93,4
10500 Jung A600 6 1,1 6,6 -93,4
10500 Jung A600 6 1,1 6,6 -93,4
10500 Busch A700 7 1,7 11,9 -88,1
10500 Busch A700 7 1,7 11,9 -88,1
10500 Busch A700 7 1,7 11,9 -88,1
10500 Berker A900 8 1,2 9,6 -90,4
10500 Berker A900 8 1,2 9,6 -90,4
10500 Berker A900 8 1,2 9,6 -90,4

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

Betreff
Datum
Anwender
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 15:27:18
Daniel
Hi
es wäre natürlich hilfreich, wenn du genauer beschreiben könntest, was du machen willst.
in VBA kann man beispielsweise mit Range(...).SpecialCells(xlcelltypevisible) die angegebene Range auf die sichtbaren Zellen einschränken.
Für Formeln gibt es die übergeordneten Funktionen Teilergebnis und Aggregat, bei denen man angeben kann, dass nur die sichtbaren Zellen für die Berechnung verwendet werden sollen.
Gruß Daniel
AW: Formel über gefilterte Zeilen
23.11.2022 15:40:16
Angelika
Hallo,
entschuldigung, wenn ich mich nicht richtig ausgedrückt habe. Ja ich ich möchte die Range auf den sichtbaren Zeilen in der intelligenten Tabelle beschränken.
Die Berechnung sollte dann auch nur auf den ausgewählten Bereich ausgeführt werden, in dem Beispiel ist es ja nur eine Mulitiplikation von eine Zelle die dann
ausgegeben sollte.
Grüße
Angelika
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 15:43:52
onur
Diese Beschreibung ist auch nicht genauer. Erst schreibst du "Range", dann sprichst du von EINER Zelle.
Wie wäre es mal mit einem Beispiel?
AW: Formel über gefilterte Zeilen
23.11.2022 15:30:57
onur
" eine Formel drüber laufen lassen" - Was für Eine?
AW: Formel über gefilterte Zeilen
23.11.2022 15:45:43
Angelika
ich hab eine Testdatei hochgeladen.... es soll nur ein Beispiel sein... in meiner richtigen Tabelle sind einfache Aufschläge und Abschläge einer Zeile / Zelle zu berechnen.
Mein Problem ist, obwohl ich Zeilen gefiltert habe, werden in der intelligenten Tabelle alle Zeilen berechnet und nicht nur die Sichtbaren.
Grüße
Angelika
AW: Formel über gefilterte Zeilen
23.11.2022 15:49:03
onur
Eine "Testdatei", die nicht viel mit dem Problem gemeinsam hat, bringt auch nix.
Wo sind denn da irgendwelche Berechnungen?
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 15:56:58
Angelika
Die Berechnung ist in Spalte H..... wenn man einen Filter setzt auf den Nettopreis (Filter = 5 und 8), und ich löse die

Sub Formel aus, dann berechnet es mir alle
Zeilen und nicht nur die gefilterten der Spalte H.

Sub Test_Filter_Formel()
With ThisWorkbook.Worksheets("Tabelle1")
.Range("A1").AutoFilter
.Range("D1").AutoFilter 4, Array("5", "6"), xlFilterValues
End With
End Sub

Sub Formel()
Dim iRow As Integer
iRow = ThisWorkbook.Worksheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
With ThisWorkbook.Worksheets("Tabelle1")
.Range("H2").Formula = "=RC[-2]-100"
.Range("H2:H" & iRow).FillDown
End With
End Sub

Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 15:53:50
Daniel
Hi
in einer intelligenten Tabelle ist es sinnvoll, wenn alle Zellen einer Spalte mit Formel die gleiche Formel enthalten.
wenn du willst, dass in Ausgeblendeten Zellen die Werte nicht berechnet werden, müsstest du das in der Formel darstellen.
also nicht: =D2*E2
sondern: =Wenn(Teilergebnis(3;D2);D2*E2;"")
mit dieser Formel wird dann, wenn die Zelle ausgeblendet ist, nichts gerechnet sondern nur der Text "" ausgegeben.
Gruß Daniel
AW: Formel über gefilterte Zeilen
23.11.2022 15:56:28
Daniel
andererseits bekommst du, wenn du eine Auswertung wie =Summe(F:F) durch =Aggregat(9;5;F:F) ersetzt, die Summe über die sichtbaren Zellen der Spalte F.
Gruß Daniel
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 16:25:22
ChrisL
Hi
Etwas verwirrend. Eine mögliche Interpretation:

Sub t()
With Worksheets("Tabelle1").ListObjects("Tabelle1")
.Range.AutoFilter
.ListColumns("VK").DataBodyRange.ClearContents
.ListColumns("Nettopreis").Range.AutoFilter 4, Array("5", "6"), xlFilterValues
.ListColumns("VK").DataBodyRange.Formula = "=[@Nettopreis]*[@Aufschlag]"
End With
End Sub
cu
Chris
AW: Formel über gefilterte Zeilen
23.11.2022 16:51:10
Herbert_Grom
Hallo Angelika,
mit dieser Formel sollte es doch klappen:

=AGGREGAT(9;3;F:F)
9 = für Summe
3 = für Ausgeblendete Zeilen ignorieren
Servus
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 17:17:00
Angelika
Vielen lieben Dank an alle.... ich bin begeistert von dieser Hilfsbereitschaft.
Vielen Dank, Grüße Angelika
AW: Formel über gefilterte Zeilen
23.11.2022 17:21:32
Herbert_Grom
Jetzt weiß ich aber immer noch nicht, ob es dir geholfen hat!
AW: Formel über gefilterte Zeilen
23.11.2022 17:41:09
onur
"Vielen lieben Dank an alle" ist definitiv KEIN Feedback - klingt eher nach auf den Boden gestreute Almosen.
Wenn mehrere Leute versucht haben, dir zu helfen, solltest du auch mal dir die Mühe machen, dich zu den einzelnen Beiträge zu äussern.
AW: Formel über gefilterte Zeilen
23.11.2022 19:10:37
JoWE
Ich denke das "ich bin begeistert von dieser Hilfsbereitschaft" schon recht deutlich zum Ausdruck bringt, dass zum einen zumindest eine der Lösungen funktioniert und zum anderen damit alle die hier zur Frage gepostet hatten damit ausreichend lobend angesprochen sind.
Wäre Angelika sonst begeistert?
Seid doch bitte nicht so empfindlich.
Gruß
Jichen
Anzeige
AW: Formel über gefilterte Zeilen
23.11.2022 19:41:23
Christian
Hallo zusammen, ja ich muss noch testen, hab heute noch einen anderen Termin, sobald ich getestet habe und es funktioniert gebe ich natürlich Bescheid… Vielen Dank
Angelika
andere Konzept...
23.11.2022 17:34:45
Yal
Hallo Angelika,
mit einer User Defined Function kann man den Zustand der Zeile ausgeben (muss in einem allgemeine Modul abgelegt werden):

Public Function IstZeileSichtbar(Optional Target As Range) As Boolean
If Target Is Nothing Then Set Target = Application.Caller
IstZeileSichtbar = Not Target.EntireRow.Hidden
End Function
= IstZeileSichtbar()
ergibt dann WAHR oder FALSCH je nach dem, ob die Zeile gefiltert ist oder nicht.
Man sieht aber nur WAHR.
Mit
= IstZeileSichtbar() * 1
sieht man zwar nur einser, aber eine Summe über die ganze Spalte zeigt, dass alle nicht sichtbare Zelle null sind.
Man kann entweder eine Wenn auf dem Wahr/Falsch oder eine Multiplikation auf dem 1/0 vornehmen, um das gewünschte Ergebnis zu erreichen.
VG
Yal
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige