• 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.

VBA en Vlookup

Status
Niet open voor verdere reacties.

TJ86

Gebruiker
Lid geworden
28 sep 2014
Berichten
127
Goedenavond collega's,

ik heb dit bestand: Bekijk bijlage Voorbeeld.xlsx

Blad1
Indien met het relatienummer invult in cel B2 verschijnt in cel B7 de naam van de relatie.


Het volgende is mijn vraag en hier komt VBA om de hoek kijken vermoed ik;
indien dmv een vlookup het relatienummer wordt gevonden in tabblad AA01-VH dient checkbox VH automatisch aangevinkt te worden, als er niets wordt gevonden dient de checkbox "uit" te blijven
indien dmv een vlookup het relatienummer wordt gevonden in tabblad AA01-MH dient checkbox MH automatisch aangevinkt te worden, als er niets wordt gevonden dient de checkbox "uit" te blijven
indien dmv een vlookup het relatienummer wordt gevonden in tabblad AA01-PR dient checkbox PR automatisch aangevinkt te worden, als er niets wordt gevonden dient de checkbox "uit" te blijven
indien dmv een vlookup het relatienummer wordt gevonden in tabblad AA01-ST dient checkbox ST automatisch aangevinkt te worden, als er niets wordt gevonden dient de checkbox "uit" te blijven

indien cel B2 het relatienummer wordt gewist dienen de 4 checkboxes weer blanko te worden.

Indien een ander relatienummer wordt ingevuld in B2 dienen de 4 checkboxes geupdate te worden met de nieuwe resultaten van de vlookup.


Ik ben hier al dagen mijn hoofd over aan het breken en ik kom er maar niet uit.

Is iemand die mij kan helpen?

Thx! TJ
 
Zonder VBA én zonder ActiveX objecten, maar simpelweg met formules het lettertype Wingdings... ;)
 

Bijlagen

  • Voorbeeld (5).xlsx
    18 KB · Weergaven: 31
Hey Ginger,

super bedankt voor het meedenken en zal deze optie ook zeker meenemen in een van de mogelijkheden. Maar liever zou ik toch een oplossing vinden voor de optie met de checkboxes :$
 
TJ86 , de reden dat ik van die checkboxes ben afgestapt is eigenlijk door de simpele reden dat je die "misbruikt". Het is namelijk - in mijn ogen - nooit je bedoeling dat een gebruiker op die checkboxes gaat klikken neem ik aan? Als dat zo is, heb je dus niets aan een checkbox. Een gebruiker is gewend om op zoiets te klikken om aan of uit te zetten. Jij wilt volgens mij alleen maar laten zien of de relatie op een bepaald sheet voor komt. Vandaar dus met iets "niet aanklikbaars" in mijn oplossing.
Je zou ook nu kunnen denken aan een soort van stoplicht. Groen als de relatie bestaat op de sheet en rood indien niet.

Dus... WAT wil jij precies bereiken met die checkboxes?
 
klantgegevens.jpg

Wat ik wil bereiken met de checkboxes is dat ik op een 'professionele' manier wil aantonen of een relatie "klant" is bij de B.V. "VH" of "MH" of "PR" of "ST".

Jouw voorbeeld met de wingdings werkte prima! Alleen, het oog wil ook wat (als ik zo vrij mag zijn). Niet verkeerd bedoeld, want ik vond het een top oplossing,
maar mijns inziens kan het met de checkboxes een stuk "netter".

Nogmaals mijn excuses voor mijn nogal kritisch oog
 
Nogmaals mijn excuses voor mijn nogal kritisch oog
Ha ha ha... géén problemen hoor. Het is JOUW werkstuk, dus mag je kritisch zijn. Ik kan van mijn kant alleen maar aangeven wat ik op basis van ervaring constateer. ;)
Dus vooral doorgaan met voor wat jij voor ogen hebt (want uiteraard kan je checkboxen koppelen via VBA).
 
Begin altijd eerst met een goede opzet en denk dan pas na over de opmaak.

Waarom zet je de klantgegevens niet in één tabel? Nu moet je steeds vier tabellen doorlopen en krijg je onnodige lange formules. In het plaatje staan x velden met klantgegevens je krijgt dan overal zo'n constructie
Code:
=IFERROR(VLOOKUP($B$2;Tabel1;3;0);IFERROR(VLOOKUP($B$2;Tabel2;3;0);IFERROR(VLOOKUP($B$2;Tabel3;3;0);IFERROR(VLOOKUP($B$2;Tabel4;3;0);""))))
of een snellere variant bij veel gegevens
Code:
=IFERROR(INDEX(Tabel1;MATCH($B$2;Tabel1[Relatienummer];0);3);IFERROR(INDEX(Tabel2;MATCH($B$2;Tabel2[Relatienummer];0);3);IFERROR(INDEX(Tabel3;MATCH($B$2;Tabel3[Relatienummer];0);3);IFERROR(INDEX(Tabel4;MATCH($B$2;Tabel4[Relatienummer];0);3);""))))

In het voorbeeldje heb ik in de tab database een aantal tabellen gezet.
- De blauwe is een samenvoeging van de vier tabjes met als aanvulling de B.V.
- In de groene zoals het hoort namelijk alleen de basisgegevens
- In de oranje een koppeling tussen de debiteuren en de B.V.'s

Het voordeel van de groene en oranje tabel is dat je, als er wijzigingen zijn, dit maar op één plek hoeft aan te passen. Op blad1 heb ik het eea uitgewerkt.
De vinkvakjes worden aan- of uitgezet obv de TRUE/WAAR of FALSE/ONWAAR die je op Blad1 ziet staan.
 

Bijlagen

  • Voorbeeld.xlsb
    34,2 KB · Weergaven: 32
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan