Уклоните дупликате у програму Екцел ВБА - Једноставни макрои програма Екцел

Преглед садржаја

У наставку ћемо погледати програм у Екцел ВБА то уклања дупликате.

Ситуација:

У колони А имамо 10 бројева. Желимо да уклонимо дупликате са ових бројева и ставимо јединствене бројеве у колону Б.

1. Прво, декларишемо четири променљиве. тоАдд типа Боолеан, уникуеНумберс типа Интегер, и типа Интегер и ј типа Интегер.

Дим тоАдд Ас Боолеан, уникуеНумберс Ас Интегер, и Ас Интегер, ј Ас Интегер

2. Затим уписујемо први број колоне А у колону Б јер је први број увек „јединствен“.

Ћелије (1, 2) .Вредност = Ћелије (1, 1) .Вредност

3. Покрећемо две променљиве. Управо смо додали један број у колону Б, па иницијализујемо уникуеНумберс са вредношћу 1. Поставили смо наАдд на Труе под претпоставком да је потребно додати и следећи број (ово није нужно тачно).

уникуеНумберс = 1
тоАдд = Тачно

Морамо да утврдимо да ли је други број „јединствен“ или није. То се може учинити на врло једноставан начин. Само ако број већ није у колони Б, други број треба додати у колону Б.

4. Ово такође морамо проверити за трећи број, четврти број итд. За ово започињемо петљу Фор Нект.

За и = 2 до 10

5. Сада следи најважнији део програма. Ако је други број једнак једном од бројева у колони Б (до сада имамо само један јединствени број), поставили смо наДодај на Нетачно јер у овом случају не желимо да додамо овај број! (није „јединствен“). У овом тренутку уникуеНумберс је и даље једнак 1, али уникуеНумберс може бити цела листа. Да бисмо проверили целу листу, потребна нам је још једна петља Фор Нект. Опет: ако је број који желимо да додамо једнак једном од бројева на овој листи, тоАдд ће бити постављено на Фалсе и број неће бити додат. Додајте следеће редове кода:

За ј = 1 За јединствене бројеве
Ако су ћелије (и, 1) .Вредност = Ћелије (ј, 2) .Вредност Тада
тоАдд = Фалсе
Крај Ако
Даље ј

6. Само ако је тоАдд још увек Труе и није подешено на Фалсе, Екцел ВБА мора да дода број у колону Б. Истовремено, повећавамо уникуеНумберс за 1 јер сада имамо још један јединствени број више. Следеће линије кода обављају посао:

Ако је тоАдд = Тачно
Ћелије (јединствени бројеви + 1, 2). Вредност = Ћелије (и, 1). Вредност
уникуеНумберс = уникуеНумберс + 1
Крај Ако

7. Коначно, поставили смо наДодај у Труе под претпоставком да је потребно додати следећи број (трећи број). Опет, ово није нужно тачно.

тоАдд = Тачно

8. Не заборавите да затворите петљу.

Затим сам

9. Поставите свој макро у командно дугме и тестирајте га.

Резултат:

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave