Superfiltr pe VBA

Filtru inteligent Standard pentru a alege din listă - un lucru, desigur, familiar și de încredere. Dar pentru condiții complexe trebuie să îndeplinească nu atât de mult de acțiune. De exemplu, pentru a filtra valorile care se încadrează în intervalul de 100 - 200, o listă mouse-ul trebuie să implementeze filtre, pentru a alege Condiții (Personalizat). și noi versiuni de Excel: Număr Filtre - Filtru personalizat (filtre Număr - Filtru personalizat). Apoi, în caseta de dialog, setați doi operator de comparare, valorile și logice conectiv (AND-OR) între ele:







Superfiltr pe VBA

Nu atât de mult, ar spune unii. Da, dar dacă a doua zi trebuie să repetăm ​​această procedură de mai multe zeci de ori? Există o soluție - un filtru alternativ utilizând un macro, care va avea valoarea criteriilor de selecție direct din foaia de lucru, în cazul în care pur și simplu introducem tastatura. De fapt, acesta va fi ca un filtru avansat, dar funcționează în timp real. Pentru a realiza un astfel de lucru, trebuie să facem doar doi pași:

Etapa 1: Intervalul numit pentru condițiile

În primul rând, aveți nevoie pentru a crea un interval de nume, în cazul în care vom introduce condiții, iar în cazul în care acestea vor avea un macro. Acest lucru se poate face direct deasupra tabelului pentru a introduce o pereche de linii goale, și apoi selectați celulele pentru criteriile viitoare (cifra este A2: F2) și să le dea numele condițiilor. se potrivesc în câmpul nume în colțul din stânga sus și apăsați tasta Enter. Pentru claritate, am identificat aceste celule în galben:







Pasul 2. Adăugați macro filtru

Acum, când introduceți oricare dintre termenii în celulele galbene din gama noastra numit apoi filtrarea va fi declanșat, afișarea numai liniile necesare pentru a ne și ascunde inutile:

Așa cum este cazul cu filtru inteligent clasic (filtru) Filtru și Extended (filtru avansat). în filtrul nostru macro se poate folosi în condiții de siguranță metacaractere:

  • * (Asterix) - înlocuiește orice număr de caractere
  • ? (Question mark) - înlocuiește orice caracter unic

și operatorii disjuncție:

  • Și - ambele condiții
  • Sau - că cel puțin una dintre cele două condiții

Când ștergeți conținutul termeni de celule galben este eliminat automat din filtrarea coloanelor corespunzătoare.

Link-uri conexe

Salutări tuturor!
Spune-mi, din cauza a ceea ce funcționează Superfiltr parte?
Am făcut totul așa cum este scris în articol.
- Am creat o „rază de acțiune pe nume pentru condițiile“
- Adăugat "Screening Macro".
Favorizarea Angliei. Mic element versiune Office, Când faceți clic pe pictograma pagina nu a fost găsit codul sursă / Sursa de text, astfel încât utilizarea
faceți clic pe "View Code".
- File Save As .xlsm

Dar, în mod inexplicabil, filtru funcționează parțial. El nu filtrează valori în formatul număr zecimal.
Pe ecranul este clar.

Și apoi, o încercare de a filtra date număr zecimal

Sper ca pentru ajutor! Pentru că nu putea să înțeleagă motivul acestei erori.

Poate avea ceva de adăugat, sau schimba în macro.
Deși exemplul are aceeași - coloana cu date numerice, care sunt filtrate.