Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1344to1348
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

Autofilter rechts von aktiver Zelle aktiv?

Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 09:57:37
aktiver
Hallo zusammen,
ich habe ein kleines Syntax-Problem. Ich möchte Prüfen, ob der AutoFilter rechts von der aktiven Zelle aktiviert ist. Bloß ich bekomme Laufzeitfehler...
Habe zwei Ansätze:
If ActiveCell.Offset(0, 1).Select.AutoFilterMode Then
If InStr(Range("ActiveCell.Offset(0, 1).select"), "x") Then
Wäre super wenn mir einer weiter helfen könnte.
Viele Grüße,
Stefan

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 10:29:10
aktiver
Hallo,
Sub aaaa()
If ActiveCell.Column 
Gruß
Rudi

AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 11:07:52
aktiver
Hi Rudi,
danke für die schnelle Antwort. Es funktioniert aber leider nicht so wie ich mir das vorgestellt habe.
Ich finde in einer Suchfunktion die vorher abläuft 2 Elemente (In Spalte A). In Spalte B ist ein Filter. Es soll aber nur das Element in eine nächste Schleife weiter gegeben werden, welches im Filter "aktiv" ist bzw. nicht rausgefilter wird.
If found > 1 Then

.
.
.
Hättest du dazu auch noch eine Idee?
Vielen Dank und Grüße,
Stefan

Anzeige
AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 10:35:14
aktiver
Hallo Stefan,
etwa in der folgenden Art sollte die Prüfung funktionieren.
Gruß
Franz
Sub aaTest()
If fncAutofilterOn(Zelle:=ActiveCell.Offset(0, 1)) Then
MsgBox "Autofilter in rechter Nachbarzelle ist gesetzt"
Else
MsgBox "Autofilter in rechter Nachbarzelle ist nicht gesetzt"
End If
End Sub
Function fncAutofilterOn(Zelle As Range) As Boolean
'Prüft, ob der Autofilter für die Spalte mit der Zelle gesetzt ist.
Dim wks As Worksheet
Set wks = Zelle.Parent
fncAutofilterOn = False
With wks
'prüfen, ob der Autofilter im Blatt aktiv ist
If .AutoFilterMode = True Then
'Prüfen, ob Filter im Blatt gesetzt sind
If .FilterMode = True Then
'Prüfen, ob sich die Zelle innerhalb des Autofilterbereiches befindet
If Not Application.Intersect(Zelle, wks.AutoFilter.Range) Is Nothing Then
'Prüfen ob Filter in Spalte der Zele gesetzt ist
fncAutofilterOn = .AutoFilter.Filters(Zelle.Column _
- .AutoFilter.Range.Column + 1).On
End If
End If
End If
End With
End Function

Anzeige
AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 11:22:57
aktiver
Hallo Franz,
danke für die Antwort! Bekomme jetzt leider die Fehlermeldung: "Sub oder Funktion nicht definiert" für fncAutofilterOn. Woran könnte das nun liegen?
Viele Grüße,
Stefan

AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 12:31:24
aktiver
Hallo Stefan,
die Function "fncAutofilterOn" mit ihrem Code musst du in ein allgemeines Modul der Datei kopieren, in der diese Function verwendet werden soll. Dann kann sie beliebig von anderen Makros aufgerufen werden.
Mit dem Code
    If fncAutofilterOn(Zelle:=ActiveCell.Offset(0, 1)) Then
MsgBox "Autofilter in rechter Nachbarzelle ist gesetzt"
Else
MsgBox "Autofilter in rechter Nachbarzelle ist nicht gesetzt"
End If

in deiner Hauptprozedur wird diese Function dann für die als Parameter angegebene Zelle ausgeführt und gibt als Ergebnis Wahr oder Falsch zurück.
Wenn die von dir beschrieben Meldung kommt, dann hast du die Function fncAutofilterOn nicht korrekt eingefügt. Diese sollte in ein allgemeines Modul eingefügt sein (bevorzugte Methode) oder kann auch in das gleiche Modul wie die Hauptprozedur eingebaut sein.
Gruß
Franz

Anzeige
AW: Autofilter rechts von aktiver Zelle aktiv?
24.01.2014 13:45:21
aktiver
Hallo Franz,
danke für die ausführliche Erklärung, jetzt hat es funktioniert!
Schönes Wochenende!
Stefan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige