Herbers Excel-Forum - das Archiv

VBA-Selektion

Bild

Betrifft: VBA-Selektion
von: Sonja

Geschrieben am: 18.04.2005 16:32:37
Hallo,
habe mir mit Mühe und Not (und Eurer Hilfe) folgende Prozedur zusammengebastelt:
Sub Ausw19()
Sheets("Master").Select
Range("A7:H100").Select
Selection.Copy
Sheets("Ausw19").Select
Range("A7").Select
ActiveSheet.Paste
Range("A6:H100").Select
Selection.AutoFilter
End Sub

Habe diese Prozedur auf 20 verschiedene Arbeitsblätter angewendet. Problem: Bei 3 Anwendungen (VBA-Code absolut identisch - bis auf die Sheets) erkennt er die Titelzeile (in diesem Fall Z.6) nicht und sortiert die mit ein. Wie kann ich das verhindern?
Grüße, Sonja
Bild

Betrifft: Zusatz: VBA-AutoFilter (Titel markieren!)
von: Sonja

Geschrieben am: 18.04.2005 17:09:41
Mir ist jetzt mal aufgefallen, dass es nicht funktioniert, weil ich nach der AutoFilter-Selektion noch mal nach dem Alpahbet sortieren lasse:
Sub Ausw19()
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=">=25000", Operator:=xlAnd
Selection.AutoFilter Field:=8, Criteria1:="operativ"
Selection.AutoFilter Field:=6, Criteria1:="4"
Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

Teilweise steht die Überschrift nämlich im Alphabet hinter der Auswahl. Wie kann ich denn den Titel als solchen markieren? Habe es mit "'" versucht, klappt nicht. Kann mir bitte jemand helfen?
Bild

Betrifft: AW: Zusatz: VBA-AutoFilter (Titel markieren!)
von: Nepumuk

Geschrieben am: 18.04.2005 17:19:55
Hallo Sonja,
der Parameter "Header" (Überschrift) kennt drei Werte.
xlGuess = Excel soll entscheiden, ob die 1. Zeile eine Überschrift ist. (Erkennbar an einer anderen Formatierung.)
xlYes = Die 1. Zeile ist eine Überschrift.
xlNo = Die 1. Zeile ist keine Überschrift.
Alle klar?
Gruß
Nepumuk
Bild

Betrifft: AW: Zusatz: VBA-AutoFilter (Titel markieren!)
von: Sonja

Geschrieben am: 18.04.2005 17:22:24
Ja, wunderbar. Die 1. Zeile soll die Überschrift sein - also die 1. zeile in der Markierung - hier Zeile 6. Könntest Du mir wohl dann noch ganz kurz sagen, wo das "xlYes" mit dem Verweis auf Zeile 6 hin muss?
Sub Ausw15()
Sheets("Master").Select
Range("A7:H100").Select
Selection.Copy
Sheets("Ausw15").Select
Range("A7").Select
ActiveSheet.Paste
Range("A6:H100").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:="<25000", Operator:=xlAnd
Selection.AutoFilter Field:=8, Criteria1:="operativ"
Selection.AutoFilter Field:=6, Criteria1:="1"
Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub


Das wäre supernett. Vielen Dank!
Bild

Betrifft: AW: Zusatz: VBA-AutoFilter (Titel markieren!)
von: Nepumuk

Geschrieben am: 18.04.2005 17:31:22
Hallo Sonja,
wie schon geschrieben, der Parameter: Header
Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlYes,
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Gruß
Nepumuk
Bild

Betrifft: AW: Zusatz: VBA-AutoFilter (Titel markieren!)
von: Sonja
Geschrieben am: 19.04.2005 14:56:23
Ach ja, natürlich. Vielen Dank.
 Bild