14/07/2023 - Sgrubak ha scritto:
Mmm… Anche a me, su Excel 365 Beta. Non ci avevo fatto caso.
Quel che ho notato è che sembra funzionare bene su un foglio normale, mentre se c'è una tabella riporta sempre 1.
Ti corrisponde?
Su tabella è un pò diverso…
Poniamo di avere Tabella1 e filtrando la prima colonna per valori > 55 non trova nessuna corrispondenza:
ActiveSheet.ListObjects("Tabella1").Range.AutoFilter Field:=1, Criteria1:=">55"
If ActiveSheet.ListObjects("Tabella1").Range.Columns(1).SpecialCells(xlCellTypeVisible).CountLarge = 1 Then MsgBox "Nessun record trovato.", vbInformation, "Info"
Quindi in questo caso se si contano le celle di colonna 1, la funzione ritorna 1 … cioè conteggia solo la testata della tabella.
se vuoi testarla non mettere la tabella a partire da A1… magari posizionala qualche riga sotto ;-)
Alla fine è lo stesso concetto di questa applicata al foglio di lavoro e ovviamente non fa riferimento all'oggetto Tabella:
If ActiveSheet.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Count = 1 Then MsgBox "Nessun record trovato.", vbInformation, "Info"
Giusto ?