ID tematu: 76128
 |
Skrócenie kodu w makrze |
Autor |
Wiadomość |
salvado
Exceloholic

Wersja: Win Office 2019
Posty: 224
|
Wysłany: 28-09-2024, 10:28 Skrócenie kodu w makrze
|
|
|
witajcie,
intuicja podpowiada mi, że taki działający kod:
Kod: |
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=1
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=4
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=5
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=6
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=7
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=8
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=9
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=10
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=11
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=12
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=13
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=14 |
można zastąpić jedną linią. Próbowałem z przecinkami, średnikami i innymi znakami, ale nie wychodzi.
Podpowiecie jak, jeśli w ogóle? |
|
 | ID posta:
437093
|
|
|
 |
|
|
|
Maciej Gonet
Excel Expert

Wersja: Win Office 365
Pomógł: 3596 razy Posty: 10587
|
Wysłany: 28-09-2024, 11:26
|
|
|
Można zrobić tak:
Kod: | ActiveSheet.Range("$B$2:$O$252").AutoFilter _ Field:=Array(1,4,5,6,7,8,9,10,11,12,13,14) | albo pętlą:
Kod: | Dim i As Long
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=1
For i = 4 To 14
ActiveSheet.Range("$B$2:$O$252").AutoFilter Field:=i
Next i |
|
|
 | ID posta:
437094
|
|
|
 |
|
|
salvado
Exceloholic

Wersja: Win Office 2019
Posty: 224
|
Wysłany: 28-09-2024, 11:54
|
|
|
dzięki - pomógł pomysł nr 2. Pierwszy - nie wiem dlaczego - generuje Syntax Error. |
|
 | ID posta:
437095
|
|
|
 |
|
|
Maciej Gonet
Excel Expert

Wersja: Win Office 365
Pomógł: 3596 razy Posty: 10587
|
Wysłany: 28-09-2024, 12:36
|
|
|
Jakby był załącznik, to można by sprawdzić.
U mnie działało, ale sprawdzałem na mniejszej liczbie kolumn.
To jest jedna linia kodu podzielona podkreśleniem na dwie. Możesz to też uruchamiać w jednej linii. |
|
 | ID posta:
437096
|
|
|
 |
|
|
Tajan

Pomógł: 5591 razy Posty: 12114
|
Wysłany: 28-09-2024, 15:52
|
|
|
Jeżeli zadaniem makra jest reset wszystkich wyborów filtra to można użyć:
Kod: | ActiveSheet.Autofilter.ShowAllData |
|
|
 | ID posta:
437098
|
|
|
 |
|
|
salvado
Exceloholic

Wersja: Win Office 2019
Posty: 224
|
Wysłany: 01-10-2024, 14:54
|
|
|
Tajan,
tak, chodzi o usunięcie filtrowania w całym arkuszu. Dziękuję za kod. |
|
 | ID posta:
437129
|
|
|
 |
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
Strona uĹźywa plikĂłw cookies.
Kliknij tutaj, Ĺźeby dowiedzieÄ siÄ jaki jest cel uĹźywania cookies oraz jak zmieniÄ ustawienia cookie w przeglďż˝darce.
KorzystajÄ
c ze strony uĹźytkownik wyraĹźa zgodÄ na uĹźywanie plikĂłw cookies, zgodnie z bieĹźÄ
cymi ustawieniami przeglÄ
darki.
SprawdĹş, w jaki sposĂłb przetwarzamy dane osobowe
|