Seznam vstup. hodnot pro filtry v makru na třízení dat

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

MK_Vs
Level 2
Level 2
Příspěvky: 185
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Seznam vstup. hodnot pro filtry v makru na třízení dat

Příspěvekod MK_Vs » 13 zář 2010 18:22

Dobrý den,

třídím data do jednotlivých listů ze vstupních seznamů pomocí zaznamenaného makra v němž je přímo uvedeno, která data mají být pomocí filtru vybírána a kam kopírována.

Např. pro operaci s číslem 04 vybírám ve sloupcí 5 listu „Data (2)“ pomocí filtru data, která pak kopíruji (vložit jako - hodnoty) na list Wickeln 04 do buňky B5. Totéž opakuji pro podmínku, kdy vybírám tutéž operaci, ale rozšiřuji o sloupec 4 s hodnotou K100.

' třízení 1 (5-zařízení, 4-operace, 6-pořadové číslo zařízení)
' pro další podmínku vlož (, Criteria1:="TEXT")
Sheets("Data (2)").Select
Selection.AutoFilter Field:=5, Criteria1:="04"
Selection.AutoFilter Field:=4
Selection.AutoFilter Field:=6
Range("A2:V65000").Select
Selection.Copy
Sheets("Wickeln 04").Select
Range("B5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
' třízení 1-K100 (5-zařízení, 4-operace, 6-pořadové číslo zařízení)
Sheets("Data").Select
Selection.AutoFilter Field:=5, Criteria1:="04"
Selection.AutoFilter Field:=4, Criteria1:="K100"
Selection.AutoFilter Field:=6
Range("A2:V65000").Select
Selection.Copy
Sheets("Wickeln 04").Select
Range("Y5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
......

Zjistil jsem, že pokud ovšem potřebuji zadávat jako vstupní parametr třízeni místo 04 třeba hodnotu 10 tak musím editovat i cestu v makru, což není při častých změnách dobré. Totéž platí platí pro název listu.

Otázka: mohu definovat tyto 3 vstupní pole v tabulce na listu např. Operace, kde budou sloupce s údaji pro filtry 5; 4 a 6 a cesta bude pevně uvedena v makru? Při změne pouze přepíšu požadované hodnoty pro vyhledání. Tím by odpadla editace již zaznamenaného makra. Totéž by platilo pro název souboru. Vznikla by řada, která by patřila jakoby k sobě.

Děkuji.

Reklama
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Seznam vstup. hodnot pro filtry v makru na třízení dat

Příspěvekod navstevnik » 13 zář 2010 23:26

Pro hodnoty parametru, ktere se meni, pouzij promenne, do nichz bud hodnoty vloz, napr.:
list="Data(05)"
Crt1="04"
nebo nacti z listu, napr.:
list=Worksheets("Operace").Range("a1").Value
Crt1=Worksheets("Operace").Range("a2").Value


a pak pouzij promennou, napr.:
Sheets(list).Select
Selection.AutoFilter Field:=5, Criteria1:=Crt1

Nebo s pouzitim smycky a offsetu lze nacitat data z tabulky, pr.:
For i=0 to 5
Crt1=Worksheets("Operace").Range("a2").Offset(i,0).Value

....
' zde pouzit
Selection.AutoFilter Field:=5, Criteria1:=Crt1
....
next i
Naposledy upravil(a) navstevnik dne 14 zář 2010 06:39, celkem upraveno 1 x.

MK_Vs
Level 2
Level 2
Příspěvky: 185
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Seznam vstup. hodnot pro filtry v makru na třízení dat

Příspěvekod MK_Vs » 14 zář 2010 06:38

Dobrý den, děkuji za odpověď,

snažím se použit variantu s načtením z listu

list=Worksheets("Operace").Range("a1").Value
Crt1=Worksheets("Operace").Range("a2").Value
----------------
Sheets(list).Select
Selection.AutoFilter Field:=5, Criteria1:=Crt1

Ovšem stále provádím zadání špatně. Bylo by možno prosím do vloženého kódu v původní příspěvku vepsat tuto variantu pro včechna 3 kritéria.

Děkujil


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 38 hostů