Extragerea valorilor unice dintr-o gamă de celule sau dintr-o matrice, macro-uri pentru excel

Igor, mulțumesc!
Spuneți-mi cum să modificați funcția astfel încât valorile unice să fie transferate în formatul în care se aflau în matricea inițială? În cazul meu, matricea inițială este numerele care sunt descărcate de la un alt program și nu sunt formatate ca numere, în timp ce sunt transferate ca numere. Din această cauză, funcția VLOOK nu funcționează ulterior.






Sau poate că este mai bine ca funcția să convertească mai întâi matricea inițială la numere și numai apoi să transfere matricea unică?

Acest lucru se datorează faptului că ați transferat doar o parte a codului într-un alt fișier (și ați uitat să copiați funcția funcției UniqueValuesFromArray)

Bună ziua!
În fișierul nativ, macro-ul funcționează bine, pe de altă parte, cu aceeași extensie nu funcționează, produce o eroare Sub sau a unei funcții care nu este definită pe UniqueValuesFromArray. În ce poate exista un motiv?
Extensiile ambelor fișiere au fost modificate în .xlsm
Mulțumesc!

Înțeleg.
MULTUMESC MULTUMITE PENTRU FUNCTION1111111

Se pare că valoarea a 36-a (care este "prima unică") - arată doar ca prima
(de exemplu, există un spațiu suplimentar sau o literă rusă este înlocuită cu o limbă engleză similară)

Bună ziua.
O dată voi spune că în macrouri nu înțeleg Th.
Mi-a plăcut foarte mult funcția, dar a existat o problemă.
Funcția selectează 35 de valori unice, apoi returnează prima valoare unică.
Care este problema?

Articolul spune:

funcția utilizator - pentru a fi folosită ca o formulă de matrice

selectați mai multe celule, introduceți această formulă și închideți intrarea apăsând Ctrl + Shift + Enter (în loc de introducerea obișnuită)






Apoi se vor afișa mai multe valori unice

În general, cele unice pot fi derivate fără formule, fără macrocomenzi.

Orei bune din timpul zilei. Macroul a lucrat bine pentru mine, dar funcția "Unique" funcționează din anumite motive doar în fișierul exemplu Unique.xls. Situația este aceasta: toate ca o caracteristică a adăugat la modulul, dar este pe segmentul refuză să funcționeze corect, în loc de valori unice oferă prima valoare disponibilă și o returnează în toate celulele în care este înregistrată funcția. Ajutor vă rugăm să înțelegeți.

Deci poți să o faci, dar.
un lucru este să alegi valori unice (totul este clar, nu există vreo opțiune),
și destul de altul - pentru a alege linii cu valori unice în unele coloane.

De exemplu, avem 3 linii cu aceleași valori în coloana 1.
Care dintre aceste trei linii ar trebui să fie rezultatul rezultatului? Primul, al treilea, al doilea?

Un exemplu de utilizare a acestuia pentru cazul dumneavoastră:

Ne pare rău pentru neplăcere))
Aveți încă o întrebare.

Acum eșantionul este unic numai în coloana "A".
Este posibil să facem un eșantion unic în coloana "A", dar cu condiția ca coloanele B și C să se încadreze, de asemenea, în intervalul de filtrare?

Ca rezultat, valorile unice vor fi selectate în coloana "A", dar intrările corespunzătoare din coloanele B și C vor fi, de asemenea, salvate.

Asa cum am dat seama:
Dim prima coloană ca interval: Setare FirstColumn = Intervalul (Foi) ("A1"), Foi ("date") Interval ("A" Rows.Count) .End (xlUp))

Spune-mi, te rog. Acum, macroul este declanșat dacă foaia cu matrice este activă.
Cum să adăugați corect un nume de foaie la o intrare, astfel încât activarea unei foi cu un matrice să nu fie obligatorie?

Am încercat așa, dar macro-ul produce o eroare:

Dim prima coloană ca interval: setați prima coloană = intervalul de coli ([A1], foile ("date") Intervalul ("A" Rows.Count) .End (xlUp))

totul este bine, nu prea clar ce se întâmplă. Aici ar fi un fișier cu un exemplu de lucru, dar sub acest rezultat a fost posibil să se calculeze, unde

Un exemplu excelent de utilizare a colecțiilor pentru a crea o gamă de înregistrări unice. Pentru mult timp folosesc colecții, dar înainte de asta nu m-am gândit la asta. Și funcționează rapid))







Trimiteți-le prietenilor: