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

gegevens van een ander blad valideren

Status
Niet open voor verdere reacties.

Bosch_Guido

Gebruiker
Lid geworden
30 dec 2004
Berichten
107
Hallo allemaal,

ik heb het volgende probleem. In mijn werkblad in excel staan in kolom a een aantal voorwerpen. In kolom B staan selectievakjes en in kolom h staan verwijzingen naar die selectievakjes. Nou wil ik, dat als een selectievakje aangevinkt is (waarde in H = WAAR) de waarde van het vakje wat daarbij hoort wordt gekopieerd naar een ander werkblad (werkblad 2, liefst in kolom H) en daar in een nette lijst komen. Ik wil namelijk deze lijst weer gebruiken voor een validatie van een dropdownlist.

Het zal dus zoiets worden als:
Als vinkje = aan, waarde kopieren naar de eerste lege cel in H (werkblad 2). Volgende waarde: als vinkje = aan, waarde kopieren naar de cel onder de vorige waarde!

Er mogen dus geen spaties in komen! Hoe kan ik vervolgens dit (dynamische bereik) gebruiken om een validatie mee te maken?

Ik hoop dat ik duidelijk genoeg ben.

Kan iemand me helpen?
 
Ik heb nu op werkblad 2 in kolom H een evrwijzing gemaakt naar de namen van de voorwerpen van blad 1. Als het selectievakje aan staat, verschijnt bij H de naam van het voorwerp. Staat het selectievakje niet aan, dan krijg ik echter een leeg vakje. Dit zet zich voort in de dropdown dus krijg ik een dropdown met enkele lege vlakken. Heeft iemand hier een oplossing voor?

Alvast bedankt
 
Ik zie je probleem. Het maken van een validatie (in de lijst vorm) geeft een lege regel wanneer de celwaarde leeg is. Dit gebeurt ook met de Formuliervorm hiervan (de keuzelijst).
Ook het aanvinken van "Lege cellen negeren" heeft geen effect en de lege plaatsen blijven staan.

De oplossing van TS is door de keuzelijst anders te maken, namelijk zonder gaten.
 
Overigens, hier is mijn voorbeeld van hoe ik denk dat de TS het bedoeld:

op blad1 staan de selectievakjes
op blad2 komt de validatielijst
 

Bijlagen

Dit is inderdaad precies zoals ik het nu heb. Op het moment dat je nu selectievakje één uitzet, krijg je in de validatielijst een leeg vakje en daarna waarde 2 en waarde 3. Heeft hier iemand een oplossing voor? mbv een macro waarschijnlijk?

Bedankt alvast!
 
Hey fantastisch, dit doet echt precies wat ik wil. Heerlijk is dat! Welke opbouw van mijn werkblad is er nog nodig om de macro's terug te brengen tot één macro? Nou ja, ik heb mijn werkje bijgevoegd als bijlage. Ik zie al wel dat, omdat je in H rijen gaat tellen, ik de koppelingen met de selectievakjes daaronder zal moeten verplaatsen naar bijvoorbeeld kolom I. Let niet op de inrichting van m'n werkblad tot nu toe. Dat is nog lang niet af ;-)

Ik snap de code trouwens wel, op een klein gedeelte na. Je gaat eerst de rijen tellen in H op blad 2. Dat getal noem je x. Vervolgens kijk je op blad 1 of H* "WAAR" is en kopieer je de waarde uit A* naar Range("H" & x).Offset(1, 0) Hier snap ik het even niet. Je kopieert naar kolom H, dat snap ik, maar dan & x, dat zou betekenen dat je altijd kopieert naar rij x, omdat dat nou eenmaal is hoeveel excel er geteld heeft? Klopt dit of doet de formule offset daar wat aan? De "else" die daarna volgt kan ik ook niet helemaal ontleden.

Sorry dat ik zoveel vragen stel, maar ik wil graag meer van Excel leren en daarbij heb ik gewoon een beetje hulp nodig :o

Ik hoop dat je deze vragen nog kunt/wilt beantwoorden. Tot nu toe heel erg bedankt, je hebt me heel erg geholpen.

Guido :thumb:
 
Guido,

Graag wat info.
Op Blad Algemeen staan in B15 t/m B57 selectievakjes.
Moeten deze selectievakjes de naastliggende waarde van kolom A kopieren?
Zoja naar welk Blad en welke kolom.

Geef even het wachtwoord wat je in de VBeditor hebt ingevoerd. Best handig als ik code wil invoeren.
 
Beste Luc,

Sorry dat ik mijn wachtwoord verscholen had, dit had ik in een eerder blad ongedaan gemaakt maar was ik dit keer vergeten. Het is ook niet te moeilijk; nl "guido".

De selectievakjes in B17 t/m B57 hoeven niet allemaal gekopieerd te worden naar een ander blad, alleen de faciliteiten waar extra voor betaald moet worden komen terug bij het tabblad "bezoekers en tarieven" onder het kopje faciliteiten. Ik wil alleen graag met selectievakjes werken omdat dit de makkelijkste manier is van "afvinken" of een faciliteit aanwezig is of niet, makkelijker nog dan een "keuze uit lijst" met JA of NEE. Met een aantal selectievakjes hoeft dus verder niks te gebeuren.

Misschien is het een optie om bij enkele faciliteiten een extra selectievakje te maken indien bezoekers daar extra voor moeten betalen. Als dit selectievakje aangevinkt is kan de tekst in de cel bij A overgenomen worden. Ik heb deze opzet alvast gemaakt, zie bijlage. Alleen is dan nog een probleem om het geheel dynamisch te maken, namelijk op het moment dat een zwembad een faciliteit heeft die ik niet benoemd heb, moet men deze handmatig in kunnen voeren. Dit is voor mij nog een probleem wat ik niet zo snel opgelost zie worden.

Verder moeten de onderwerpen bij het tabblad cursusaanbod gekopieerd worden naar het tabblad bezoekers en tarieven, onder de de juiste kop.

Ik hoop dat je me op weg kunt helpen, als je me de code een beetje uit zou willen leggen, dan kan ik er zelf ook nog mee aan de gang. Bijvoorbeeld dat je de selectievakjes van blad 1 doet en kopieert naar blad 2, dan lukt het waarschijnlijk wel met blad 2 naar 3.

Alvast bedankt weer!! :thumb:

Guido
 

Bijlagen

Guido,
Bedankt voor je mooie verhaal.
Toch is het voor mij nodig dat je zaken exacter omschrijft.

bv. A88 van blad15 moet Q23 van blad 22 enz...

Ik stuur je hierbij de gevraagde uitleg.
Studeer er een poosje op en proberen en nog eens proberen. (Gebruik een kopie van je werk)

Ik denk dat je er wel uitkomt.
Maar je mag natuurlijkaltijd terugkomen.
 

Bijlagen

Oké, ik kom al een heel eind.

Ik heb alleen nog een vraag. Hoe zie ik, als ik de code in één macro wil houden, op welk selectievakje er geklikt wordt? Bijvoorbeeld het eerste selectievakje staat op B4, maar daar wordt niet op geklikt. het tweede selectievakje staat op B5, daar wordt wel op geklikt. Hoe kan ik dan middels de VBA code "zien" dat ik op B5 klik en niet op B4? Of moet ik gewoon bij elk selectievakje een aparte macro maken? Ik wil het graag in één keer goed doen en ik wil de mogelijkheden van excel verder ontdekken...

Bedankt.

Guido
 
even voor de duidelijkheid nog. De selectievakjes staan dus in B4 t/m B8. Dit zijn de selectievakjes waarvan ik de tekst mee wil laten verhuizen. Deze moeten dan terecht komen op blad 2 genaamd " cursusaanbod" in kolom H, vanaf rij 4.

Dus nog één keer alles op een rijtje:
Als selectievakje 1 (koppeling met H4) TRUE wordt....
Kopieer de tekst van A4 naar blad "Cursusaanbod", cel H4.

Als selectievakje 2 (koppeling met H5) TRUE wordt....
Kopieer de tekst van A5 naar blad " Cursusaanbod", cel H5, als H4 tenminste nog niet gevuld is.

Kan ik hier een loop van maken?
 
Guido,

Aan de selectievakjes in B4 t/m B8 zijn reeds macro's verbonden. Zichtbaar en onzichtbaar maken)

Vraag: Moeten deze macro's in tact blijven?
 
Hallo Luc,

De macro's moeten intact blijven, met de selectievakjes zorg ik voor een wat overzichtelijker werkblad voor de gebruiker. Deze ziet dan namelijk geen zaken die hij niet nodig heeft. Eventueel is het een optie om de specificaties van de bassins (wat de macro tevoorschijn brengt) te verplaatsen naar een nieuw blad, als dit makkelijker is.

Alvast bedankt. Guido
 
Guido,

De nieuwe macro's staan in module2.
Module1 is ook aangepast (Alles selecteren-Selectievakje in B9)

Hopelijk is het naar je zin.
 

Bijlagen

Hallo,

ik krijg nu een probleem met mijn voorwaardelijke opmaak / het verversen van cellen. Ik heb in H3 een OF() functie staan, die kijkt of één van de cellen H4:H9 WAAR is en wordt dus vervolgens ook waar. Deze wordt nu echter niet meer geupdate. Als één van de cellen WAAR wordt, moet ik H3 eerst selecteren en dan pas wordt H3 WAAR. Als ik deze niet selecteer verandert hij niet!!! Enig idee hoe dit komt?

Guido
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan