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

Gegevensvalidatie via VBA aanpassen

  • Onderwerp starter Onderwerp starter HBot
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

HBot

Gebruiker
Lid geworden
12 dec 2006
Berichten
325
Geacht forum

Ik heb een groot bestand waarin div. (gegevensvalidatie) dropdown menu's staan die men moet invullen (bv op klaar zetten)
Mede hierdoor (ook waarde in andere cellen worden meegenomen) wordt bepaald of men verder kan naar de volgende afdeling.

Nu komt het voor dat in een aantal gevallen niet alle menu's nodig zijn om door te kunnen en deze op klaar te zetten,
Is het mogelijk om dit via een VBA code te doen (aanpassen bv: op klaar) zetten zodat ik deze code toe kan voegen in de code die bepaald of aan alle voorwaarden is voldaan, zodat men deze niet handmatig hoeft aan te passen.

Ik heb geprobeerd dit te doen met opnemen Macro maar kom niet verder dan de selectie van de cel.
(kon ook niets direct iets vinden in forum of web)

Klein voorbeeldje toegevoegd

gr
henny
 

Bijlagen

Beste Henny,

niet echt duidelijk wat je wil, maar hier alvast wat mogelijkheden.
Zet volgende programmacode van het werkblad, en testen maar.
Rechtermuisknop op je bladtab, en kiezen voor programmacode weergeven.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Select Case Target.Address
        Case "$G$1"
            If Target.Value = "OK" Then
                Range("A1").Value = "Klaar"
            End If
        Case "$G$2"
            If Target.Value = "Nieuwe lijst" Then
                With Range("A1").Validation
                    .Delete
                    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                    xlBetween, Formula1:="1, 2, 3, 4, 5"
                    .InCellDropdown = True
                    .InputTitle = "Vul hier een getal in"
                    .ErrorTitle = "Fout"
                    .InputMessage = "Testen maar"
                    .ErrorMessage = "Geen getal uit lijst"
                    .ShowInput = True
                    .ShowError = True
                End With
            ElseIf Target.Value = "Herstel" Then
                With Range("A1").Validation
                    .Delete
                    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                    xlBetween, Formula1:="Klaar, On hold, Open"
                    .InCellDropdown = True
                    .InputTitle = "Vul hier een van de opties in"
                    .ErrorTitle = "Fout"
                    .InputMessage = "Testen maar"
                    .ErrorMessage = "Geen tekst uit lijst"
                    .ShowInput = True
                    .ShowError = True
                End With
            End If
    End Select
            
    
End Sub

zet in de cel G1 het woordje 'OK'
zet in de cel G2 de tekst 'Nieuwe lijst'
zet in de cel G2 het woordje 'Herstel'


groetjes,
Luc
 
Laatst bewerkt:
Luc,

ik heb even snel getest maar hier kan ik wel wat mee,

ga het (ergens vandaag) in het bestand zetten en hopelijk doet het wat het moet doen.

alvast bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan