🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.vbasic
1 messages
1 total messages Started by komar Wed, 12 Feb 2014 13:15
VBA Excel autofilter kryteria z tablicy
#102515
Author: komar
Date: Wed, 12 Feb 2014 13:15
29 lines
1278 bytes
Mam dziwny problem z autofiltrem w Excelu 2003. Otóż mam tablice 
zawierająca ciągi tekstowe /np. x=Array("AAA", "BBB")/.
Chcę zapisać do zmiennej zakres komórek w arkuszu Excela spełniający 
warunki podane w autofiltrze (na górze zakresu są komórki z tytułami 
kolumn, a na dole zakresu jedna kolumna jest sumowana, dlatego 
filtrowany zakres jest pomniejszany o te 2 wiesze) - podam fragment 
kodu, to będzie lepiej widać o co mi chodzi:

.Range("A4").AutoFilter Field:=15, Criteria1:=1
.Range("A4").AutoFilter Field:=10, Criteria1:=x(1)
Set rng = 
.AutoFilter.Range.Offset(1,0).Resize(.AutoFilter.Range.Rows.Count 
2).SpecialCells(xlCellTypeVisible)

Załóżmy, że w wyfiltrowanym zakresie nie ma w kolumnie 10 komórek z 
wartością "AAA". Mimo to polecenie rng.Rows.Count podaje wynik..... 1 ! 
Czemu??? Jak zmienić kod aby podawał poprawną wartość?
Dodam, że kiedy ustawienie tego filtra zmienię na:

.Range("A4").AutoFilter Field:=10, Criteria1:="AAA"

to wtedy wszystko jest ok - polecenie rng.Rows.Count podaje wynik 'Empty'


Stąd moje pytanie - jak podać do autofiltra jako kryteria dane z tablicy 
zawierającej ciągi tekstowe, aby zwracana była poprawna ilość wierszy w 
wybranym zakresie, spełniającym zapytanie autofiltra?

komar
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads