Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

FILTER-Funktion per VBA einfügen

Forumthread: FILTER-Funktion per VBA einfügen

FILTER-Funktion per VBA einfügen
07.03.2022 15:40:24
{Boris}
Hallo zusammen,
ich möchte per VBA diese Formel einfügen:

=FILTER($A:$A;$B:$B="x")
Also: Zeige alle Einträge aus A, bei denen in Salte B ein "x" steht,
Es gelingt mir nur, sie mittels Formula2R1C1 einzutragen - mit Formula geht es nicht.
Das hier geht einwandfrei:

Sub test()
Range("G1").Formula2R1C1 = "=FILTER(C1,C2=""x"")"
End Sub
Das hier geht nicht - bzw. die Formel wird mit einem beginnenden @ eingetragen, so dass nur 1 Eintrag erscheint:

Sub test2()
Range("G1").Formula = "=FILTER($A:$A,$B:$B=""x"")"
End Sub
Ergibt =@FILTER($A:$A;$B:$B="x")
Wie kann man die Formel mit der Formula-Eigenschaft richtig eintragen?
Viele Grüße
Boris
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Formula2
07.03.2022 15:48:05
Rpp63
Welche Art von Formula Du nutzt ist egal.
Wichtig ist nur, dass Du bei Spillformeln die Variante mit 2 nehmen musst!
Gruß Ralf
So einfach...
07.03.2022 15:49:47
{Boris}
Hi Ralf,
...kann es manchmal sein. Vielen Dank! Thema erledigt.
VG, Boris
Anzeige
Formula2
07.03.2022 15:48:14
Rpp63
Welche Art von Formula Du nutzt ist egal.
Wichtig ist nur, dass Du bei Spillformeln die Variante mit 2 nehmen musst!
Gruß Ralf
;
Anzeige
Anzeige

Infobox / Tutorial

FILTER-Funktion per VBA einfügen


Schritt-für-Schritt-Anleitung

Um die FILTER-Funktion per VBA in Excel einzufügen, folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul:

    • Klicke im Menü auf Einfügen und wähle Modul.
  3. Füge den folgenden Code in das Modul ein:

    Sub EinfuegenFilter()
       Range("G1").Formula2R1C1 = "=FILTER(C1,C2=""x"")"
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro EinfuegenFilter aus, um die FILTER-Formel in die Zelle G1 einzufügen.

Verwende die Formula2R1C1 Methode, um Spillformeln wie die FILTER-Funktion korrekt einzufügen, da die Formula Methode nicht die gewünschte Funktionalität bietet.


Häufige Fehler und Lösungen

  • Fehler: Die Formel wird mit einem @-Zeichen eingetragen.

    • Lösung: Stelle sicher, dass du die Formula2R1C1 Methode verwendest. Bei der Formula Methode wird das @-Zeichen hinzugefügt, was bedeutet, dass Excel nur den ersten Eintrag der Spillformel anzeigt.
  • Fehler: Die Formel wird nicht korrekt ausgeführt.

    • Lösung: Überprüfe, ob die verwendeten Zellen korrekt verlinkt sind und ob die Daten in den entsprechenden Spalten vorhanden sind.

Alternative Methoden

Wenn du die FILTER-Funktion in Excel ohne VBA verwenden möchtest, kannst du sie direkt in die Zelle eingeben. Zum Beispiel:

=FILTER(A:A, B:B="x")

Diese Methode ist einfacher, wenn du keine automatisierten Prozesse benötigst. Bei großen Datensätzen oder häufigen Änderungen kann jedoch die VBA-Methode effizienter sein.


Praktische Beispiele

Hier ist ein Beispiel, wie du die FILTER-Formel in einer Excel-Tabelle anwenden kannst:

  1. Angenommen, in Spalte A stehen Namen und in Spalte B die Status (z.B. "x" oder leer).
  2. Du möchtest alle Namen anzeigen, deren Status ein "x" ist:
    Sub BeispielFilter()
       Range("G1").Formula2R1C1 = "=FILTER(A:A, B:B=""x"")"
    End Sub

Führe den Code aus, und die gefilterten Namen erscheinen in der Zelle G1.


Tipps für Profis

  • Nutze die Formula2R1C1 Methode immer, wenn du mit Spillformeln arbeitest.
  • Teste deine VBA-Skripte zuerst in einer Testumgebung, um Fehler zu vermeiden.
  • Informiere dich über die Auswirkungen von Spillformeln auf die Performance deiner Excel-Datei, insbesondere bei großen Datenmengen.

FAQ: Häufige Fragen

1. Warum muss ich Formula2R1C1 verwenden?
Die Formula2R1C1 Methode ist notwendig, um Spillformeln korrekt einzufügen, da sie Excel anweist, die gesamte Ausgabe der Funktion zu berücksichtigen.

2. Was passiert, wenn ich Formula verwende?
Wenn du die Formula Methode verwendest, wird die Formel mit einem @-Zeichen eingetragen, was bedeutet, dass nur der erste Wert der Spillformel angezeigt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige