Toon posts:

meerdere kolommen tegelijk filteren in excel

Pagina: 1
Acties:
  • 11.684 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo

Ik zou graag meerdere kolommen tegelijk filteren op niet-lege waarden. Weet iemand hoe ik dit kan doen?

Als ik bij kolom A begin met de filterfunctie dan is het resultaat van kolom A prima maar alle andere kolommen worden negatief beinvloed door de eerste filteractie. de rijen waarvan in kolom A niks staat verdwijnen namelijk ookal staan er dezelfde rij wel waarden in bijvoorbeeld kolom E en G. Deze worden dus verwijderd en dat mag niet gebeuren.

Verwijderd

Topicstarter
Bedankt Moosehead maar de oplossing van mijn probleem staat er niet bij.
Weet iemand een andere oplossing om meerdere kolomen tegelijkertijd te filteren

  • jvo
  • Registratie: Augustus 2001
  • Laatst online: 04-10-2023

jvo

geen commentaar

Je wilt dus alleen rijen verbergen die in meerdere kolommen geen waarde hebben?

In dat geval kan je gewoon een hulpkolom gebruiken. Stel dat je een rij wilt verbergen die leeg is in kolom A en B. Maak dan in C2 de formule =A2&B2 en kopieer die door. Dan kan je gewoon op lege cellen filteren in kolom C.

Als je de inhoud van de hulpkolom niet wil zien trouwens, kan je bijvoorbeeld de opmaak naar aangepast en ;;; zetten.

[ Voor 77% gewijzigd door jvo op 14-12-2004 13:15 ]


  • djexplo
  • Registratie: Oktober 2000
  • Laatst online: 09-12 15:18
Mr. Romax , Zou je misschien een (cijfer) voorbeeldje kunnen geven wat je bedoelt, en de formules geven die je nu voor filtering gebruikt?

'if it looks like a duck, walks like a duck and quacks like a duck it's probably a duck'


  • SPee
  • Registratie: Oktober 2001
  • Laatst online: 12-12 14:15
Data -> Filter -> Autofilter en dan de betreffende kolommen filteren :?

let the past be the past.


Verwijderd

Topicstarter
ter verduidelijking:

ik heb 30 kolommen van 2500 rijen. Dit zijn dus 30 x 2500 cellen = 75000 cellen. In deze cellen staat soms een getal maar veelal zijn de cellen leeg en staat er dus geen waarde in. Ik wil de filterfunctie gebruiken om alleen de cellen over te houden waarin een waarde vermeld staat. Deze cellen met inhoud moeten dan direct onder elkaar komen te staan zonder tussenkomst van lege cellen.

Als ik de automatische filter kies in excel dan gaat het mis. Deze functie kijkt namelijk naar de niet- lege cellen in kolom A. Als er in een bepaalde cel in kolom A geen waarde staat en dus leeg is, verwijdert excel de gehele rij ipv alleen die cel. Het gevolg is dat cellen van kolom B, C, D etc ook verwijderd worden terwijl daar dus wel niet-lege cellen in staan.

vb rij 45: kolom A staat niks, rij45:kolom B staat 45, rij 45:kolom C staat niks.

Ik zou dus willen dat cel 45A en cel 45C verwijderd worden aangezien daar geen waarde in staat. cel 45B moet behouden blijven.

Ik hoop dat het nu wat duidelijk is geworden

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Je kan hiervoor toch gewoon het advanced filter optie gebruiken?

Afbeeldingslocatie: http://www.uncc.edu/sysdev/HowTos/Excel/Advanced%20Filtering_files/image006.jpg

Image even gegoogled

Verwijderd

Dat gaat inderdaad niet werken met de uitegreide sorteer functie.

Betekent dit dat de cellen in een rij niets met elkaar te maken hebben want dat verband zul je verliezen als je dit doet?

Een manier zou zijn om te zoeken naar alle lege cellen in het bereik en deze te verwijderen waarbij de cellen naar boven opgeschoven worden. De zoek en delete actie kun je makkelijk in een macro opnemen en dan aanpassen zodat het juiste bereik doorzocht wordt. Maak wel eerst een backup voor je dit test...

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 12-12 11:11
Je kan ook alle kolommen apart filteren. let er wel op dat het bereik dan alleen die kolom is.

Verwijderd

Topicstarter
nee ik kan helaas niet per kolom filteren. Het is of 1 kolom filteren of ...en dat wil ik graag...alles tegelijk dus 30 kolommen tegelijkertijd.

Mooshead. Hoe ziet zo'n macro eruit? Ik heb geen verstand van macro''s schrijven

Woutlooper kun je iets specifieker zijn? Hoe ziet bijvoorbeeld die criteria range eruit als ik wil filteren op niet-lege waarden

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 12-12 11:11
Hier heb je een mooi macrootje:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sub test()
Dim cel As Range
Dim sel As Range
Set sel = Selection
Dim rij As Integer
rij = sel.Rows.Count
kolom = sel.Columns.Count
For i = rij To 1 Step -1
    For j = 1 To kolom
        If sel.Cells(i, j).Value = "" Then
            sel.Cells(i, j).Delete Shift:=xlUp
        End If
    Next j
Next i
End Sub

Het ding moet van onder naar boven zoeken(tegen twee lege cellen), vandaar een beetje knullige code (en gewoon omdat ik geen andere programeerstijlen ken O-) )
Wat je doet is:
-plak deze code ergens in een module (als hoe? ->neem een macro op, rag Alt-F11, zoek in paneel linksboven naar Module 1, plak onder je macro (dus niet in je macro)
-maak een backup (want zie boven)
-selecteer je rijen
-run macro "test"
-ben klaar

[ Voor 3% gewijzigd door onkl op 14-12-2004 21:43 ]


  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

pivot tabels / kruistabellen

[ Voor 8% gewijzigd door Fish op 14-12-2004 22:55 ]

Iperf


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Aangaande het sorteren heeft Dick Kusleika (en co.) ook nog wat geschreven. Zie deze resultaten van zijn weblog search maar.

Verwijderd

Topicstarter
Woudloper , de sorteerfunctie heeft jammer genoeg niet het gewenste effect.

Onkl. Misschien heb ik je macro verkeerd toegepast maar bij mij werkt ie niet. Wat bedoel je eigenlijk met:
Quote [ Het ding moet van onder naar boven zoeken(tegen twee lege cellen)] End Quote

  • CoRrRan
  • Registratie: Juli 2000
  • Laatst online: 24-06 09:35

CoRrRan

Don't Panic!!!

  • Selecteer je gebied waar alle waarden instaan.
  • Klik op "Edit"-->"GoTo"-->"Special..."
  • Selecteer "Blanks"
  • Klik op "OK"
  • Rechtermuisknop op geselecteerde cellen
  • Klik op "Delete.." --> "Shift cells up" --> "OK"
Is dit wat? (Sorry, heb alleen Engelse versie van Excel hier...)

-- == Alta Alatis Patent == --


  • JeroenG
  • Registratie: Juli 2002
  • Laatst online: 11-12 21:09
Dus als ik het goed begrijp wil je een tabel overhouden waar alle lege cellen uitgehaald zijn en waarin alle waarden per kolom omhoog geschoven zijn. Moet de volgorde van de waarden behouden blijven?

Ik begrijp dat de kolommen onafhankelijk van elkaar zijn en dat het gewoon dertig losse rijtjes getallen zijn? Als de volgorde van de waarden niet uitmaakt kan je misschien iets doen met het sorteren van een kolom. Dan krijg je alle lege cellen automatisch bij elkaar. Dan iedere kolom apart sorteren en je bent er. Is dit een eenmalige actie of komt dit vaker voor? Anders kan je inderdaad beter een macro schrijven.

Edit: @Corrran: hmmm, die oplossing is bijna te simpel... Je moet er maar opkomen _/-\o_

[ Voor 7% gewijzigd door JeroenG op 15-12-2004 15:41 ]


Verwijderd

_/-\o_ CoRrRan

Exact wat de code van onkl doet. Moosehead heeft weer wat geleerd.

  • CoRrRan
  • Registratie: Juli 2000
  • Laatst online: 24-06 09:35

CoRrRan

Don't Panic!!!

Verwijderd schreef op woensdag 15 december 2004 @ 16:01:
_/-\o_ CoRrRan

Exact wat de code van onkl doet. Moosehead heeft weer wat geleerd.
Nu nog hopen dat de TS er iets aan heeft en we zijn weer presto...

En tja, zo af en toe eens door die nooit gebruikte knopjes en menuutjes klikken in Excel heeft me al veel nieuwe en leuke dingen geleerd... waaronder deze... :)

offtopic:
Kennen jullie de ongelooflijk nuttige functietoets F4 al? Daarmee kun je (als je een cel aangeklikt hebt) direct de rij, kolom of beide fixeren dmv een $-teken (ff paar keer klikken)... Echt briljant, maar ja, je moet er maar opkomen...

-- == Alta Alatis Patent == --


Verwijderd

Topicstarter
CoRrRan,

Je aanwijzing werkt perfect...in een nieuw aangemaakt werkblad waarin ik het heb getest . Zodra ik het toepas op het werblad waar de kolommen staan die gefilterd moeten worden, lukt het in eens niet meer. ik krijg een foutmelding van excel : "er zijn geen cellen geselecteerd". Ik heb die verdomde cellen wel geselecteerd maar excel ziet dat niet. Ik snap niet waar dit nu aan ligt :( . Iemand een idee?

[ Voor 3% gewijzigd door Verwijderd op 15-12-2004 22:55 ]


  • CoRrRan
  • Registratie: Juli 2000
  • Laatst online: 24-06 09:35

CoRrRan

Don't Panic!!!

Dat is inderdaad wel een vreemde. Mogelijk kan je een screenshot maken en die posten om even aan te geven dat je echt de cellen geselecteerd hebt, aangezien ik het niet voor elkaar kan krijgen om die error te voorschijn te toveren, ik heb toch wel wat opties bekeken, maar elke keer selecteert Excel de juiste cellen.

Beetje vreemd is het wel...

-- == Alta Alatis Patent == --


Verwijderd

Topicstarter
ok ik heb een kleine selectie gemaakt waarin 2 cellen zijn te vinden met content alle andere zijn dus zoals je ziet leeg.

Afbeeldingslocatie: http://www.roflash.nl/excel.jpg

Verwijderd

Topicstarter
mogelijke verklaring:

de cellen in kolommen die gefilterd moeten worden, bevatten oorspronkelijk een formule waaruit een waarde of geen-waarde resulteerden.

formule: =ALS(EN(FW2533<>0;FW2534=0);SOM(FW$1:FW2533)-SOM(FX$1:FX2532);"")

Op het eerste gezicht zie je dus een kolom met veel lege cellen en af en toe een cel met daarin een getal. Ga je op een "lege" cel staan dan krijg je de formule te zien in de functiebalk in excel.

Toen heb ik de kolommen waar het om gaat, gekopieerd naar een nieuw werkblad (om originele opmaak te behouden) en daar geplakt door te kiezen voor bewerken en "plakken speciaal" . Je krijgt dan een window te zien met mogelijkheden. ik heb daar gekozen voor "alleen waarden" plakken.

Op dit nieuwe werkblad staan dus kolommen met "niet-lege cellen" en lege cellen. Selecteer je een "lege" cel dan zie je ook geen formule maar in de functie balk.

Helaas blijft er wel iets in die "lege cellen" staan want zodra ik de overigens juiste oplossing van CoRrRan probeer krijg ik dus een foutmelding.

Ik ben er intussen wel achter dat zodra ik deze zogenaamde Lege cellen selecteer en kies voor "inhoud wissen" dan lukt het in 1 x wel om de oplossing van CoRrRan uit te voeren.

Het probleem zit m dus in de lege cellen die nog steeds niet echt leeg zijn maar een formule bevatten. Hoe zorg ik er voor dat de lege cellen gekopieerd en geplakt kunnen worden zodat de oorspronkelijk formule verdwijnt en ik de oplossing van CoRrRan kan toepassen

[ Voor 12% gewijzigd door Verwijderd op 15-12-2004 23:49 ]


Verwijderd

Topicstarter
Probleem is opgelost. De code/macro die Onkl mij gaf werkt uitstekend. Bedankt voor jullie hulp
Pagina: 1