Ik heb in Excel een lijst van 3000 relaties. De bedoeling is dat ik een filter maak waarin alle relaties die er 2 of meer keer in excel afgedrukt worden op het scherm. Ik heb al wat in in de HELP zitten zoeken van Excel, maar kan niet tot een oplossing komen. Zijn hier mensen die weten hoe ik dit kan doen ?
Ik heb even gekeken, en ik heb geen standaard functie gevonden waarmee dit kan.
Je kunt wel een lijst pakken en dan de unieke waarden er uit pikken, maar je wil juist het omgekeerde.
Ik vrees dat je dan toch aan het schrijven van een Visual Basic functie / macro toekomt...
je kunt dan bv:
- Een array maken voor de namen
- Iedere naam die je tegenkomt controleren of die in het array staat,
zo ja: Zet naam in je uiteindelijke lijst ( wel even controle of deze naam daar ook al niet in stond, anders heb je bij 3 orders voor 1 klant, die naam toch 2x in je lijst)
zo nee: Zet naam in je array
Mocht je niet ervaren zijn in VB dan zou ik zou je wel wat op weg kunnen helpen met de code ...
Maar je zou dan ook http://www.experts-exchange.com kunnen proberen, hier schrijven sommige mensen stukken code voor anderen in ruil voor wat punten ( = eer ).
Je kunt wel een lijst pakken en dan de unieke waarden er uit pikken, maar je wil juist het omgekeerde.
Ik vrees dat je dan toch aan het schrijven van een Visual Basic functie / macro toekomt...
je kunt dan bv:
- Een array maken voor de namen
- Iedere naam die je tegenkomt controleren of die in het array staat,
zo ja: Zet naam in je uiteindelijke lijst ( wel even controle of deze naam daar ook al niet in stond, anders heb je bij 3 orders voor 1 klant, die naam toch 2x in je lijst)
zo nee: Zet naam in je array
Mocht je niet ervaren zijn in VB dan zou ik zou je wel wat op weg kunnen helpen met de code ...
Maar je zou dan ook http://www.experts-exchange.com kunnen proberen, hier schrijven sommige mensen stukken code voor anderen in ruil voor wat punten ( = eer ).
Ik ken wel een beetje VB. Het enige wat ik niet weet is hoe ik een cel in een array (of collection) kan kopieren.
Met Cells():
code:
1
2
3
4
| Dim n(3000) as String
For n = 1 To 3000
myArray(n) = Activesheet.Cells(n,1)
next n |
a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]
Verwijderd
kun je niet alle namen kopieren in een aparte lijst en vervolgens de naam laten tellen in de lijst. Ales waar waarde 2 of hoger staat kun je vervolgens laten zien.
Ik zeg ook maar wat hoor.
Ik zeg ook maar wat hoor.
Gewoon een kolommetje toevoegen aan je lijst, waarin je een AANTAL.ALS formule neerzet. Bijvoorbeeld :
Ik heb in kolom A de getallen 1 t/m 3000 staan met een aantal dubbele getallen.
In cel B1 zet ik :
Deze formule kopieer je naar beneden tot het eind van de lijst. Nu een filtertje op deze kolom met de voorwaarde ">1" en voila.
Is helemaal geen VBA voor nodig (desnoods verberg je die extra kolom)
Ik heb in kolom A de getallen 1 t/m 3000 staan met een aantal dubbele getallen.
In cel B1 zet ik :
code:
1
| =AANTAL.ALS("A:A", A1) |
Deze formule kopieer je naar beneden tot het eind van de lijst. Nu een filtertje op deze kolom met de voorwaarde ">1" en voila.
Is helemaal geen VBA voor nodig (desnoods verberg je die extra kolom)
[ Voor 13% gewijzigd door Skinny op 10-04-2003 12:46 ]
SIZE does matter.
"You're go at throttle up!"
Skinny, erg goed bedacht. Ga ik eens proberen ! thx
Pagina: 1