[excel] filteren van een lijst

Pagina: 1
Acties:

  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 30-08 21:27
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 ?

  • Speed24
  • Registratie: Augustus 1999
  • Niet online
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 ).

  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 30-08 21:27
Ik ken wel een beetje VB. Het enige wat ik niet weet is hoe ik een cel in een array (of collection) kan kopieren.

  • KingRichard
  • Registratie: September 2002
  • Laatst online: 17-08 19:31

KingRichard

former Duke of Gloucester

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. :Y) B)

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 13-09 23:09

Skinny

DIRECT!

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 :
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!"


  • Stalkert
  • Registratie: Januari 2001
  • Laatst online: 30-08 21:27
Skinny, erg goed bedacht. Ga ik eens proberen ! thx
Pagina: 1