Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Vba - AutoFilter

Mitglied: goodbytes

goodbytes (Level 2) - Jetzt verbinden

10.11.2011 um 23:46 Uhr, 4088 Aufrufe, 2 Kommentare

Hallo,
ich habe eine Excel-Datei mit ein paar Makros für einen User erstellt, um ihm viel Zeit zu ersparen bei einigen Auswertungen.

Das Sheet ist mit Filter-Optionen in einer Zeile versehen. Nun sollen automatisiert Auswertungen mit mehreren durch Makros gesetzten Filtern gefahren werden, in deren Folge eine neue Arbeitsmappe erzeugt wird mit nach bestimmten Namens-Vorgaben erzeugten Sheets darin. Es werden praktisch per Makro die Filter gesetzt, das Ergebnis in einer Tabelle innerhalb der Quellmappe erzeugt und diese dann in das in der neu erstellten Zielmappe in das jeweils nach Filter erzeugtem neuen Sheet reinkopiert.

Das funktioniert auch schon bestens. Ich verzweifel aber an einem kleinen Problem.

Unterhalb der AutoFilter-Zeile möchte ich nach der per Makro gesetzten Filterkombination den Index der ersten zutreffenden Zeile ermitteln, um sie dann als Variable weiterzuverwenden.

Ich habe schon alles Mögliche versucht, leider ohne Erfolg. Mir ist schon klar, dass es die "visible"-Eigenschaft gibt, ich hatte mir auch schon mal irgendwann eine Funktion gebastelt, damit für Berechnungen nur die "visible"-Zeilen berücksichtigt werden. Allerdings weiss ich momentan nicht mehr wie es war...

Vielleicht kann mir da ja mal Jemand einen kleinen Tipp geben?

Wie gesagt, es geht mir wirklich nur um die Ermittlung der ersten Zeile der Filterung (die Filter greifen erst ab Zeile 17, also die Einstellung erfolgt mittels der Zeile 16).

Gruß
Torsten
Mitglied: 76109
11.11.2011 um 14:36 Uhr
Hallo TorstenB!

Wenn ich Dich richtig verstanden habe, dann in etwa so:
01.
'Beispiel mit Tabelle1 und AutoFilter in Spalte F Zeile 16 
02.
 
03.
Sub RowIndex() 
04.
    Dim EndLine As Long, Index As Long 
05.
     
06.
    With Sheets("Tabelle1") 
07.
        EndLine = .Cells(.Rows.Count, "F").End(xlUp).Row 
08.
        Index = .Range("F17:F" & EndLine).SpecialCells(xlCellTypeVisible).Row 
09.
    End With 
10.
End Sub
Gruß Dieter
Bitte warten ..
Mitglied: goodbytes
23.11.2011 um 08:20 Uhr
Hallo Dieter,
entschuldige, dass ich mich so spät melde. Ich hatte einfach zu viel um die Ohren...

Inzwischen hatte ich auch meine damals gebastelte Lösung wiedergefunden und entsprechend angepasst:

01.
Function Erste_sichtbare_Zeile() 
02.
 
03.
For i = 17 To Workbooks(Quelldatei).Sheets(1).Cells(Cells.Rows.Count, 1).End(xlUp).Row 
04.
         
05.
    If Workbooks(Quelldatei).Sheets(1).Cells(i, 1).EntireRow.Hidden = False Then 
06.
        Erste_sichtbare_Zeile = i 
07.
        Exit For 
08.
    End If 
09.
Next 
10.
 
11.
End Function
(Quelldatei ist hier eine Public-Variable.)

Aber vielen Dank für deine Lösung; ich habe sie mir in meine kleines Archiv mit aufgenommen, da muß ich beim nächsten Mal nicht mehr so suchen.

Eine schöne Woche wünsche ich dir noch !!!

Gruß Torsten
Bitte warten ..
Ähnliche Inhalte
VB for Applications

AutoFilter via VBA in Excel mit einem Array

gelöst Frage von 94451VB for Applications8 Kommentare

Hallo, ich habe folgendes Problem: ich befülle ein Array aus einer Tabelle selbstverstänlich filter ich leere Zellen raus, jetzt ...

VB for Applications

Excel 2010 VBA: Autofilter auf anderem Tabellenblatt

gelöst Frage von YotYotVB for Applications7 Kommentare

Moin! Gibt es eine Möglichkeit, z.B. in Tabelle1!B18 einen Autofilter für Tabelle2!A:A zu erstellen? Hintergrund: mit dem Autofilter finden ...

Microsoft Office

Excel Autofilter

gelöst Frage von Florian86Microsoft Office6 Kommentare

Hallo, kann man irgendwie 2 Autofilter in Excel einbauen. Ich habe mir folgendes kleines Makro erstellt Sub Autofilter() Range("A:A").Autofilter ...

Microsoft Office

Excelsortierung mit VBA

gelöst Frage von abuelitoMicrosoft Office8 Kommentare

Hallo an Alle, ich habe wieder mal ein riesen Problem: Ich habe eine Exceltabelle mit verschiedenen Spalten (Ort, Preis, ...

Neue Wissensbeiträge
Windows 10

Blackscreen nach dem Update von 1908 auf 1809 wenn der Rechner aus dem Standby gestartet wird

Tipp von FSX2010 vor 6 StundenWindows 101 Kommentar

Habt ihr den Samsung Treiber "Samsung_NVM_Express_Driver_3.0" installiert sollte dieser für 1809 deinstalliert werden da dieser nicht kompatibel ist. Der ...

Utilities
Teamviewer 14 Verbindungsprobleme mit Proxy
Tipp von PeterleB vor 1 TagUtilities

Nach dem Umstieg von Version 13 auf 14 wollte sich TV nicht mehr mit dem Netz verbinden, ignorierte offenbar ...

Administrator.de Feedback
Unsere Datenbank wurde umgestellt
Information von Frank vor 1 TagAdministrator.de Feedback5 Kommentare

Hallo User, ich habe in der Nacht unsere Datenbank umgestellt. D.h. neue Version (MySQL 8) und andere Örtlichkeit. Sollte ...

Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 4 TagenSonstige Systeme8 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Heiß diskutierte Inhalte
Vmware
Gebrauchten ESXi- Server verkaufen: Festplatten DSGVO-konform löschen?
Frage von l.scheperVmware20 Kommentare

Hallo, wir möchten einen gebrauchten FUJITSU Server verkaufen. Auf dieser Maschine ist noch ein installiertes ESXi 5.1 und ne ...

Router & Routing
Dediziertes ISP -Routing
gelöst Frage von niLuxxRouter & Routing13 Kommentare

Liebe Community, Ich hätte eine kurze Frage an euch. Durch verschiedene Umstände kann es nun sein, dass sich zwei ...

Samba
Linux Server und Windows Linux Client
gelöst Frage von 137898Samba12 Kommentare

Hallo, ich bräuchte dringend bei der Aufgabe etwas Hilfe. Die Firma XYZ besteht auf zwei Abteilungen Logistik und Technik ...

Windows Server
Windows Server 2012 R2 Komponentenspeicher wurde beschädigt. Inplace Upgrade?
Frage von DeRo93Windows Server11 Kommentare

Hallo liebes Forum, Wir besitzen einen Domänencontroller der auf einem Windows Server 2012 R2 läuft. Dadurch, dass alle Windows ...