• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

filter in excel aansturen met vba

Status
Niet open voor verdere reacties.

rocknroadie

Gebruiker
Lid geworden
5 sep 2016
Berichten
184
Hello,

ik heb een (denk ik) interessante vraag. kan je een filter in excel aansturen vanuit VBA?

ik verklaar me nader

ik heb n tabel met verschillende kolommen waarop ik moet kunnen filteren. dit kan uiteraard makkelijk in de tabel zelf MAAR ik zou willen weten of ik dat ook via vba kan aansturen.

in bijlage een voorbeeld van mijn tabel.

kolom B staat de capacity range.

er zijn 9 mogelijke ranges gedefinieerd 0 - 150; 150 - 300; 300 - 500; 500 - 800; 800 - 1000; 1000 - 1500; 1500 - 2000; +2000

nu zou ik via een form (die ook al is gemaakt in het bestand in bijlage) willen werken waarin ik de verschillende ranges wil oplijsten met een selectievakje. als het vakje wordt aangeduid, dan moet bij het klikken op ok, de tabel getoond worden met in de filter de geselecteerde ranges.


ter informatie, dit is een onderdeel van een heel uitgebreid excel "programma" waar ik al een jaar mee bezig ben en wat stilaan bijna een echt programma aan het worden is.
omwille van vertrouwelijke informatie kan ik het ganse programma hier niet delen. waar het om gaat is dat een "gebruiker" inlogt in het "programma" dmv gebruikersnaam en wachtwoord. afhankelijk van de gebruikersnaam wordt er een rol toegewezen (staat in een tabel met gebruikers) en afhankelijk van de rol krijgt men andere keuzes. aan de hand van die keuzes krijgt men andere tabbladen te zien. een van de keuzes is dus om een zaal (venue) te zoeken de tabel is echter zo uitgebreid en niet alle gebruikers zijn even goed in het gebruik van excel dat ik hen het leven zo makkelijk mogelijk wil maken en dus via forms wil werken.

uiteindelijk gaat men op verschillende criteria moeten kunnen zoeken en ga ik dus met meer dan een filter moeten kunnen werken.

mijn vraag is (vragen zijn)

1. hoe kan ik de filter aansturen vanuit een form
2. hoeveel filters kan ik aansturen vanuit een form

ik heb in het verleden al heel veel voorzetten gehad hier en daar ben ik enorm dankbaar voor. hopelijk is er ook nu iemand die mij op weg kan helpen.

alvast bedankt

Marc

Bekijk bijlage venuelijstvba.xlsm
 
Misschien eens de zoekfunctie gebruiken? Zowel het uitlezen van een checkbox als het filteren op meerdere waarden zijn onlangs voorbij gekomen.

Code:
Private Sub CommandButton1_Click()
  For Each ct In Me.Controls
    If TypeName(ct) = "CheckBox" Then c00 = c00 & IIf(ct, Replace(ct.Caption, " ", "") & "|", "")
  Next ct
  If c00 <> "" Then Sheets("Blad1").ListObjects(1).Range.AutoFilter 2, Split(c00, "|"), xlFilterValues
End Sub
 
Laatst bewerkt:
VenA,

dan zal ik iig verkeerd gezocht hebben..... bedankt voor de voorzet. zou je er iets of wat van uitleg kunnen bij geven aub?

wat is die ct bvb
wat doet c00
waarvoor dient het pipe teken

alvast bedankt

Marc
 
Wel eens aan een slicer gedacht?
 

Bijlagen

  • venuelijstvbaJKP.xlsm
    72,1 KB · Weergaven: 468
Jan Karel

als ik het open krijg ik volgende melding:

this shape represents a table slicer, table slicers are supported in Excel or later. If the shape was modified in an earlier version of excel or if the workbook was saved in Excel 2007 or earlier, the slicer can't be used....

ik gebruik excel 2010.

ik ken slicers niet. ik weet ook niet of die bruikbaar zijn voor mij. in de echte tabel staan bijna 2000 records.....

kan je een slicer aansturen vanuit VBA?

alvast bedankt

Marc
 
Ja, maar tabel slicers zijn nieuw toegevoegd in 2013 dus daar heb je weinig aan :-(
 
Geen gek idee, 2010 gaat binnen afzienbare tijd over naar "extended support" en dan naar "out of support".
 
gaan we werk van maken.

kan je mij ondertussen al iets meer uitleggen over de slicers en hoe ze aangestuurd kunnen worden door vba?
 
Is dit draadje gekaapt?

In XL-2010 kan je ook gebruikmaken van slicers alleen moet je eerst een draaitabel maken en deze opmaken in tabelstijl. Een tabel met 67 kolommen vind ik nogal onoverzichtelijk en met een draaitabel kan je het wat overzichtelijker maken.

@rocknroadie,
Blijkbaar is Google een onbekend begrip. ct en c00 zijn variabelen en deze mag je een eigen naam geven. Je kan ze ook eerst declareren met Dim maar dit is kleine projecten vaak niet nodig. De pipeline is een teken dat je niet vaak tegenkomt en dus ideaal om als scheidingsteken te gebruiken. Je kan Stop toevoegen na de eerste regel in de code en het scherm Locals in de VB-editor aanzetten. Met <F8> kan je dan stap voor stap door de code lopen en zien welke waarden de variabelen krijgen.

Al eens iets gelezen over de wet bescherming persoonsgegevens? Plaats altijd bestanden met fictieve gegevens.
 

Bijlagen

  • venuelijstvba.xlsm
    73,6 KB · Weergaven: 127
VenA

Google is geen onbekend begrip maar niet iedereen is even inteligent om op de juiste manier te zoeken. ik dacht trouwens dat dit forum er juist was om mensen te helpen.....

anyway, bedankt voor de uitleg, dit brengt me opnieuw een stap dichter bij de oplossing.
 
ik snap dat dit verwarrend overkomt..... ik heb op mijn werk een andere account moeten aanmaken omdat om een of andere bizarre reden mijn persoonlijk mailadres niet gebruikt kan worden op mijn werk.... raar maar waar.
 
Je hebt geen mailadres nodig om in te loggen en anders had je even kunnen melden dat je onder een andere naam bent ingelogd. Als je bv me.controls in Google zoekt dan kan je voldoende informatie vinden.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan