Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
956to960
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
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Autofilter, geht das auch anders?

Autofilter, geht das auch anders?
03.03.2008 14:16:00
alina-michelle
Hallo,
in der Anlage habe ich eine Liste hochgefahren, bei der nun fogendes gemacht werden soll:
Durch anklicken der Initialien (gelb, D4-D6) sollen nur die Zeilen angezeigt werden, deren Initialien in Spalte H erscheinen.
Bsp. : Klicke ich auf HP, sollen nur die Zeilen angezeigt werden, in denen in Spalte H die Initialien "HP" aufgeführt ist. Wenn ich dann wieder auf "alle" klicke, sollen alle Daten wieder auftauchen.
Das Durchklicken durch den Autofilter will ich damit vermeiden.
Weiterhin soll durch einfaches Anklicken auf "sortieren" (H4) die Tabelle nach Spalte I und dann nach Spalte H sortiert werden. (Daten sortieren). Dabei sollen jedoch Daten (Datümer), die in der Vergangenheit liegen, auf das heutige Datum aktualisiert werden.
Ist es dann auch möglich, auf Klick des roten Feldes die Datei zu speichern und zu schließen?
Es wäre der Wahnsinn, wenn mir irgendjemand erfolgreich helfen könnte.
Vielen, vielen, vielen Dank bereits im Voraus.
Alina
https://www.herber.de/bbs/user/50384.xls

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter, geht das auch anders?
03.03.2008 14:24:00
MiraCeti
Hi Alina,
also ich würde mir wohl so behelfen, verschiedene Makros aufzuzeichnen und die dann einem Button zuzuordnen.
z. b. ein Makro für den Filter von HP und dann ein Button, den ich HP nenne und der beim Anklicken das entsprechende Makro auslöst.
Allerdings musst Du als Filter den benutzerdefinierten verwenden und dann "enthält", da in manchen Feld zwei Werte stehen, z. b. im Feld H12 steht AS und HP.
Es gibt bestimmt noch super elegante VBA-Lösungen...
Viele Grüße
Mira

AW: Autofilter, geht das auch anders?
03.03.2008 14:29:00
alina-michelle
Hi Mira,
hört sich gut an, aber wie zeichne ich Makros auf, habe da nahezu keine Ergahrung.
Alina

Anzeige
AW: Autofilter, geht das auch anders?
03.03.2008 14:32:25
MiraCeti
Das machst Du über das Menü Extras - Makro - Aufzeichnen.
Dann fängst Du ganz normal an, deinen Filter zu setzen, z. B. für HP. Wenn Du fertig bist, stoppst Du die Makroaufzeichnung.
Dann fügst Du über die Formular-Symbolleiste einen Button ein. Dem weißt Du dann das Makro zu, dass Du vorher aufgezeichnet hattest.
Das ist noch was simples ;-)
Mira

AW: Autofilter, geht das auch anders?
03.03.2008 14:51:00
Renee
Hi Alina,
Mache folgendes:
1. Untenstehenden (blauen) Codeteil Selektieren Ctrl-C
2. Rechtsklick auf den Tabellenreiter - Code anzeigen.
3. Ctrl-V (Code einfügen)
4. VBE schliessen
5. Ausprobieren

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lx As Long
If Intersect(Target, Range("D4:F5,D6")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.Rows.Hidden = False
If Target.Cells.Count = 1 Then
For lx = 8 To ActiveSheet.Range("H" & _
ActiveSheet.Range("H" & ActiveSheet.Rows.Count).End(xlUp).Row).Row
ActiveSheet.Rows(lx).Hidden = InStr(ActiveSheet.Cells(lx, 8), Target.Value) = 0
Next lx
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub


GreetZ Renée

Anzeige
AW: Autofilter, geht das auch anders?
03.03.2008 15:16:22
alina-michelle
Hi Renée,
das ist ja der Hammer! :-))
Absolut genial, vielen Dank.
Sag mal, ist das mit dem Sortieren auch machbar?
Gruß von der Nordseeküste
Alina

AW: Autofilter, geht das auch anders?
03.03.2008 15:22:54
Renee
Hallo Alina,
Nach was willst du denn, wann und unter welchen umständen usw. sortieren ?
GreetZ Renée

AW: Autofilter, geht das auch anders?
03.03.2008 15:31:00
alina-michelle
Hi Renée,
habe ich in der ersten Frage beschrieben. Bei Klick auf "sortieren" soll nach Möglichkeit alle Daten (Datümer), die in der Vergangenheit liegen, auf das heutige Datum automatisch umgewandelt werden. Dann soll nach Spalte "I" und dann nach Spalte "H" aufsteigend sortiert werden. Mein Chef hat so seine Probleme mit Excel, der vergisst dauern, wie die Tabelle "von Hand" sortiert wird, deshalb möchte ich es über einen Button lösen.
Auch der Klick auf das rote Feld würde hierbei sehr helfen. Die Datei soll wie beim grünen Button sortieren, danach aber speichern und schließen.
Geht das?
Viele, viele Grüße
Alina

Anzeige
Ahhh, lesen sollte frau können..
03.03.2008 15:27:00
Renee
Jetzt hab ich's gesehen, da sind ja noch viel mehr Wünsche.
Was ich nicht verstehe ist:
Dabei sollen jedoch Daten (Datümer), die in der Vergangenheit liegen, auf das heutige Datum aktualisiert werden. Es hat insgesamt 3 Spalten mit Datümer. Welche sollen den überschrieben werden? Heisst überschreiben immer alle auf das heutige Datum setzen ?
GreetZ Renée

AW: Ahhh, lesen sollte frau können..
03.03.2008 15:34:00
alina-michelle
Ja,
in Spalte "I" dürfen eigentlich keine Daten stehen, die in der Vergangenheit liegen. Eine WV (Wiedervorlage) in der Vergangenheit kommt nicht gut... ;-))
Alina

AW: Ahhh, lesen sollte frau können..
03.03.2008 16:14:00
Renee
Hi Alina,
Lösche den alten Code und ersetze ihn gemäss oben genanntem Vorgehen mit diesem:

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lx As Long, ly As Long
If Intersect(Target, Range("D4:F5,D6,H4,H6")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.Rows.Hidden = False
lx = ActiveSheet.Range("J" & ActiveSheet.Rows.Count).End(xlUp).Row
Select Case Target.Address(0, 0)
Case "D4", "E4", "F4", "D5", "E5", "F5"
For ly = 8 To lx
ActiveSheet.Rows(ly).Hidden = InStr(ActiveSheet.Cells(ly, 8), Target.Value) = 0
Next ly
Case "H4:J4"
Call Sortieren(lx)
Case "H6:J6"
Call Sortieren(lx)
Application.EnableEvents = True
ActiveWorkbook.Close SaveChanges:=True
End Select
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Sub Sortieren(lx As Long)
Dim ly As Long
ActiveSheet.Range("A8:J" & lx).Sort _
Key1:=Range("I8"), Order1:=xlAscending, Key2:=Range("H8"), _
Order2:=xlAscending, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
For ly = lx To 8 Step -1
If ActiveSheet.Cells(ly, 9).Value 


GreetZ Renée

Anzeige
AW: Ahhh, lesen sollte frau können..
03.03.2008 17:17:59
alina-michelle
Hi Andrée,
das funktioniert leider nicht. Auch die Sortierung haut jetzt nicht mehr hin.
Heul...
Alina

AW: Ahhh, lesen sollte frau können..
03.03.2008 17:23:55
Renee
Hi Alina,
Hast du irgendwelche Felder verschoben, oder sonst Änderungen an der Tabelle vorgenommen?
Wenn ja, lade sie nochmals hoch.
GreetZ Renée

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige