Discussion:
Autofilter aus Makro mit einer Variable
(zu alt für eine Antwort)
Calypso
2004-07-11 19:06:03 UTC
Permalink
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer Variable "Von" (=>) und "Bis" (=<) eine Daten selektion machen??

Besten Dank

Sub Makro1()
'
' Makro1 Makro
' Makro am 10.07.2004 von calypso aufgezeichnet
'

von = InputBox("Datum von eingeben")
Bis = InputBox("Datum bis eingeben")

Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=von", Operator:=xlAnd, _
Criteria2:="<=bis"

End Sub
--
calypso
Frank Kabel
2004-07-11 19:49:01 UTC
Permalink
Hi
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis

--
Regards
Frank Kabel
Frankfurt, Germany
Post by Calypso
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer
Variable "Von" (=>) und "Bis" (=<) eine Daten selektion machen??
Besten Dank
Sub Makro1()
'
' Makro1 Makro
' Makro am 10.07.2004 von calypso aufgezeichnet
'
von = InputBox("Datum von eingeben")
Bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=von",
Operator:=xlAnd, _ Criteria2:="<=bis"
End Sub
Calypso
2004-07-11 20:00:02 UTC
Permalink
Merci funktioniert
Danke vielmals
--
calypso
Post by Frank Kabel
Hi
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
--
Regards
Frank Kabel
Frankfurt, Germany
Post by Calypso
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer
Variable "Von" (=>) und "Bis" (=<) eine Daten selektion machen??
Besten Dank
Sub Makro1()
'
' Makro1 Makro
' Makro am 10.07.2004 von calypso aufgezeichnet
'
von = InputBox("Datum von eingeben")
Bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=von",
Operator:=xlAnd, _ Criteria2:="<=bis"
End Sub
Melanie Breden
2004-07-12 06:22:03 UTC
Permalink
Hallo Calypso,
Post by Calypso
Post by Frank Kabel
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
Merci funktioniert
Danke vielmals
welche Excel Version verwendest du?
Bei meinen Tests mit Excel2003 wird damit keine Filterung durchgeführt.
Mit folgender Prozedur wird kein Datum gefiltert:

Sub Filter_Frank()
Dim von
Dim bis
von = InputBox("Datum von eingeben")
bis = InputBox("Datum bis eingeben")

Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & von, Operator:=xlAnd, _
Criteria2:="<=" & bis
End Sub

Der Filter zeigt erst dann die richtigen Werte,
wenn ich nach der Prozedur manuell die Filterfunktion aufrufe
und die durch den Makrodurchlauf eingestellten Werte noch mal bestätige.

--
Mit freundlichen Grüssen

Melanie Breden
- Microsoft MVP für Excel -

http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Calypso
2004-07-12 06:43:02 UTC
Permalink
Merci funktioniert
--
calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Post by Frank Kabel
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
Merci funktioniert
Danke vielmals
welche Excel Version verwendest du?
Bei meinen Tests mit Excel2003 wird damit keine Filterung durchgeführt.
Sub Filter_Frank()
Dim von
Dim bis
von = InputBox("Datum von eingeben")
bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & von, Operator:=xlAnd, _
Criteria2:="<=" & bis
End Sub
Der Filter zeigt erst dann die richtigen Werte,
wenn ich nach der Prozedur manuell die Filterfunktion aufrufe
und die durch den Makrodurchlauf eingestellten Werte noch mal bestätige.
--
Mit freundlichen Grüssen
Melanie Breden
- Microsoft MVP für Excel -
http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Melanie Breden
2004-07-12 06:51:58 UTC
Permalink
Hallo Calypso,
Post by Calypso
Merci funktioniert
hmmm, verstehe ich nicht ganz :-(

Die Syntax von Frank funzt bei dir?
Mit welcher Excel-Version?

--
Mit freundlichen Grüssen

Melanie Breden
- Microsoft MVP für Excel -

http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Post by Calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Post by Frank Kabel
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
Merci funktioniert
Danke vielmals
welche Excel Version verwendest du?
Bei meinen Tests mit Excel2003 wird damit keine Filterung durchgeführt.
Sub Filter_Frank()
Dim von
Dim bis
von = InputBox("Datum von eingeben")
bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & von, Operator:=xlAnd, _
Criteria2:="<=" & bis
End Sub
Der Filter zeigt erst dann die richtigen Werte,
wenn ich nach der Prozedur manuell die Filterfunktion aufrufe
und die durch den Makrodurchlauf eingestellten Werte noch mal bestätige.
Calypso
2004-07-12 07:23:02 UTC
Permalink
Bey und nochmals Dank

im Büro Ver.2000 und zuhause 2003
--
calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Merci funktioniert
hmmm, verstehe ich nicht ganz :-(
Die Syntax von Frank funzt bei dir?
Mit welcher Excel-Version?
--
Mit freundlichen Grüssen
Melanie Breden
- Microsoft MVP für Excel -
http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Post by Calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Post by Frank Kabel
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
Merci funktioniert
Danke vielmals
welche Excel Version verwendest du?
Bei meinen Tests mit Excel2003 wird damit keine Filterung durchgeführt.
Sub Filter_Frank()
Dim von
Dim bis
von = InputBox("Datum von eingeben")
bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & von, Operator:=xlAnd, _
Criteria2:="<=" & bis
End Sub
Der Filter zeigt erst dann die richtigen Werte,
wenn ich nach der Prozedur manuell die Filterfunktion aufrufe
und die durch den Makrodurchlauf eingestellten Werte noch mal bestätige.
Frank Kabel
2004-07-12 14:37:20 UTC
Permalink
Hi Melanie
bin auch verwirrt. Funktioniert so alleine auch bei mir nicht. Hatte
halt nur diesen generellen Fehler gesehen. Aber anscheinend ist der OP
happy :-)

--
Regards
Frank Kabel
Frankfurt, Germany
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Merci funktioniert
hmmm, verstehe ich nicht ganz :-(
Die Syntax von Frank funzt bei dir?
Mit welcher Excel-Version?
Post by Calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Post by Frank Kabel
versuche
Selection.AutoFilter Field:=1, Criteria1:=">=" & von,
Operator:=xlAnd, _
Criteria2:="<=" & bis
Merci funktioniert
Danke vielmals
welche Excel Version verwendest du?
Bei meinen Tests mit Excel2003 wird damit keine Filterung
Sub Filter_Frank()
Dim von
Dim bis
von = InputBox("Datum von eingeben")
bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & von, Operator:=xlAnd, _
Criteria2:="<=" & bis
End Sub
Der Filter zeigt erst dann die richtigen Werte,
wenn ich nach der Prozedur manuell die Filterfunktion aufrufe
und die durch den Makrodurchlauf eingestellten Werte noch mal bestätige.
Melanie Breden
2004-07-11 19:54:54 UTC
Permalink
Hallo Calypso,
Post by Calypso
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer Variable "Von" (=>) und "Bis" (=<) eine Daten selektion machen??
versuche mal folgende Prozedur, sie enthält allerdings noch keine Prüfung,
ob die Eingaben Datumswerte sind:

Sub Makro1()
Dim lngVon As Long
Dim lngBis As Long

lngVon = CDate(InputBox("Datum von eingeben"))
lngBis = CDate(InputBox("Datum bis eingeben"))

Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter

Selection.AutoFilter Field:=1, _
Criteria1:=">" & lngVon, Operator:=xlAnd, _
Criteria2:="<" & lngBis
End Sub

--
Mit freundlichen Grüssen

Melanie Breden
- Microsoft MVP für Excel -

http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Calypso
2004-07-11 20:57:03 UTC
Permalink
Hallo Melanie
Wie prüfst Du die Eingabe Datumswert?

Danke
--
calypso
Post by Melanie Breden
Hallo Calypso,
Post by Calypso
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer Variable "Von" (=>) und "Bis" (=<) eine Daten selektion machen??
versuche mal folgende Prozedur, sie enthält allerdings noch keine Prüfung,
Sub Makro1()
Dim lngVon As Long
Dim lngBis As Long
lngVon = CDate(InputBox("Datum von eingeben"))
lngBis = CDate(InputBox("Datum bis eingeben"))
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">" & lngVon, Operator:=xlAnd, _
Criteria2:="<" & lngBis
End Sub
--
Mit freundlichen Grüssen
Melanie Breden
- Microsoft MVP für Excel -
http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Melanie Breden
2004-07-12 06:22:41 UTC
Permalink
Hallo Calypso,
Post by Calypso
Hallo Melanie
Wie prüfst Du die Eingabe Datumswert?
zum Beispiel so:

Sub FilterMelanie()
Dim lngVon As Long
Dim lngBis As Long

' InputBox erwartet Zahleneingabe
lngVon = Application.InputBox("Datum Von eingeben", Type:=1)
lngBis = Application.InputBox("Datum Bis eingeben", Type:=1)

' nötig um Fehler duch CDate abzufangen
On Error Resume Next
' Jahr prüfen
If Year(CDate(lngVon)) >= 1929 And Year(CDate(lngVon)) <= 2100 And _
Year(CDate(lngBis)) >= 1929 And Year(CDate(lngBis)) <= 2100 Then
' wenn CDate keinen Fehler hervorgerufen hat
If Err.Number = 0 Then
Columns("C:E").AutoFilter Field:=1, _
Criteria1:=">=" & lngVon, Operator:=xlAnd, _
Criteria2:="<=" & lngBis
Exit Sub
End If
End If
MsgBox "Eingabe enthält keinen Datumswert"
End Sub

--
Mit freundlichen Grüssen

Melanie Breden
- Microsoft MVP für Excel -

http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#
Welldone Leo
2004-07-11 20:03:31 UTC
Permalink
Schalte Autofiltern ein dann unter Benutzer definiert.

Ist kleiner als und ist Grösser als verwenden.
Gruss
Post by Calypso
Hallo
Wer kann mir helfen? Ich habe eine Tabelle und möchte mit einer Variable
"Von" (=>) und "Bis" (=<) eine Daten selektion machen??
Post by Calypso
Besten Dank
Sub Makro1()
'
' Makro1 Makro
' Makro am 10.07.2004 von calypso aufgezeichnet
'
von = InputBox("Datum von eingeben")
Bis = InputBox("Datum bis eingeben")
Columns("C:E").Select
Range("E1").Activate
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:=">=von", Operator:=xlAnd, _
Criteria2:="<=bis"
End Sub
--
calypso
Loading...