webForumDet fria alternativet

IF statement i macro för Excel?

1 svar · 369 visningar · startad av SteveP

StevePMedlem sedan mars 2003751 inlägg
#1

Jag är ute efter att göra en med If statement eller liknande om det går i Excel?

Jag har ett x antal "contacts" som har flera olika "address_type" och dessa kan vara "mail_address", "visit_address", "delivery_address"

Vissa personer kan finnas tre gånger i exceldokumentet eftersom dom har 3 olika addresstyper,

En person kan se ut på följande vis i exceldokumentet:

Anders Borg, stridgatan 3, Mailaddress
Anders Borg, västgatan 15, Visitaddress
Anders borg, västgatan 15, Deliveryaddress

I detta fallet så skulle dom två understa raderna tas bort ur dokumentet.

Johan Änglund, brålgatan 12, Visitaddress
Johan Änglund, lästgatan 45, Deliveryaddress

I detta fallet så skulle den översta raden tas bort ur dokumentet.

vad jag då vill göra är att:

Om en contact har "mail_address" så ska den ta bort dom andra raderna för den kontakten, finns det ej någon "mail_address" så ska den kolla ifall personen har en "delivery_address" och isf så ska den väljas och dom andra raderna för den kontakten ska bort, om varken "mail_address" eller "delivery_address" finns så skall till sist behålla raden med "visit_address" för personen.

prioriteringsordningen är alltså:
1. mail_address
2. delivery_address
3. visit_address

Går detta med ett macro?

MindreVetandeMedlem sedan okt. 2005362 inlägg
#2

Går lätt att lösa utan makro:
Nehej, kunde du inte ha haft villkoren i bokstavsordning :-(
Ok. Går att lösa utan makro...

1. Skapa din "prioriteringslista"
Verktyg, Alternativ, Anpassad Lista, ny lista: Skriv in:
Mailaddress
Deliveryaddress
Visitaddress
(Eller vad det nu står i verkligheten, i prioriteringsordning )
tryck på "Lägg Till" och OK

2. Sortera dina data efter namn och prioriteringsordning
Ställ dig i din adresslista i Excelarket.
Data, Sortera
Först efter = din Namnkolumn
Sedan Efter = Din "adresstypskolumn"
[Alternativ], "Första nyckelns sorteringsordning"= mailadres..., [OK], [OK]

3. Filtrera fram unika namn
(Se till att det finns en rubrikrad till dina data)
Markera NAMN-kolumnen (Typ kolumn A)
Data->Filter->AvanceratFilter
Kryssa i "enbart unika poster"
Nu kommer den att filtrera fram Den första förekomsten av varje namn. Om din sortering fungerade så kommer det att vara enligt prioriteringslistan. Kopiera listan till annan plats ochdu har en censurerad lista (orginallistan ligger kvar med de oanvända raderna dolda, tas fram med hjälp av Data->filter->visa alla).
Går naturligtvis att spela in som makro också

Genererad på 370 ms · cache AV · v20260730165559-full.f96bc7eb