Noņemiet dublikātus programmā Excel VBA - Viegli Excel makro

Satura rādītājs

Zemāk mēs apskatīsim programmu Excel VBA ka noņem dublikātus.

Situācija:

A slejā ir 10 skaitļi. Mēs vēlamies no šiem numuriem noņemt dublikātus un ievietot unikālos numurus B slejā.

1. Pirmkārt, mēs deklarējam četrus mainīgos. toAdd tipa Būla, unikālsNumuri, kuru tips ir vesels skaitlis, i veida vesels skaitlis, un j tipa vesels skaitlis.

Dim, lai pievienotu kā Būla, unikālsNumbers kā vesels skaitlis, i kā vesels skaitlis, j kā vesels skaitlis

2. Tālāk mēs ierakstām A slejas pirmo numuru B slejā, jo pirmais numurs vienmēr ir “unikāls”.

Šūnas (1, 2). Vērtība = šūnas (1, 1). Vērtība

3. Mēs inicializējam divus mainīgos. Mēs nupat B kolonnai esam pievienojuši vienu skaitli, tāpēc inicializējam unikālos numurus ar vērtību 1. Mēs iestatām uz Pievienot patiesam, pieņemot, ka jāpievieno arī nākamais skaitlis (protams, tas ne vienmēr ir taisnība).

unikālie skaitļi = 1
toAdd = True

Mums ir jānosaka, vai otrais numurs ir “unikāls” vai nē. To var izdarīt ļoti vienkāršā veidā. Tikai tad, ja numurs nav jau slejā B, otrais skaitlis jāpievieno B slejai.

4. Mums tas jāpārbauda arī attiecībā uz trešo numuru, ceturto numuru utt. Šim nolūkam mēs sākam cilpu Nākotne.

Ja i = 2 līdz 10

5. Tagad nāk vissvarīgākā programmas daļa. Ja otrais skaitlis ir vienāds ar vienu no B slejas skaitļiem (pagaidām mums ir tikai viens unikāls numurs), mēs iestatām uz Pievienot nepatiesam, jo ​​šajā gadījumā mēs nevēlamies pievienot šo numuru! (tas nav “unikāls”). Pašlaik unikālie numuri joprojām ir vienādi ar 1, bet unikālie numuri var būt vesels saraksts. Lai pārbaudītu visu šo sarakstu, mums ir nepieciešama cita cilne For Next. Atkal: ja skaitlis, kuru mēs vēlamies pievienot, ir vienāds ar kādu no šī saraksta skaitļiem, toAdd tiks iestatīts uz False un skaitlis netiks pievienots. Pievienojiet šādas koda rindiņas:

J = 1 uz unikāliem numuriem
Ja šūnas (i, 1). Vērtība = šūnas (j, 2). Vērtība Tad
toAdd = False
Beigas Ja
Nākamais j

6. Tikai tad, ja toAdd joprojām ir True un nav iestatīts uz False, Excel VBA ir jāpievieno skaitlis kolonnā B. Tajā pašā laikā mēs unikālos skaitļus palielinām par 1, jo mums tagad ir par vienu unikālu skaitli vairāk. Darbs tiek veikts, izmantojot šādas koda rindiņas:

Ja toAdd = True, tad
Šūnas (unikālie skaitļi + 1, 2). Vērtība = šūnas (i, 1). Vērtība
unikālie skaitļi = unikālie skaitļi + 1
Beigas Ja

7. Visbeidzot, mēs iestatījām uz Pievienot patiesam, pieņemot, ka jāpievieno nākamais skaitlis (trešais numurs). Atkal tas ne vienmēr ir taisnība.

toAdd = True

8. Neaizmirstiet slēgt cilpu.

Tālāk i

9. Ievietojiet savu makro komandu pogā un pārbaudiet to.

Rezultāts:

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave