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

veld verplicht stellen na invoeren van een specifiek waarde.

Status
Niet open voor verdere reacties.

Raisa85

Gebruiker
Lid geworden
14 nov 2014
Berichten
18
goede avond,


ik probeer een combinatie te maken in excel waarbij een specifiek kolom of cel verplicht wordt gesteld.
Dus bijvoorbeeld in Kolom A heb ik diverse diersoorten in een keuzelijst. En in Kolom B omgeving.
ik wil dat als ik in kolom A kiest voor kat of hamster dat kolom B verplicht ingesteld moet worden.

Daarnaast wil ik bij de cellen waar ik een keuzelijst hebt ingesteld dat alleen gekozen kan worden uit de keuzelijst en niet handmatig een waarde toegevoegd kan worden.


Met vriendelijke groet,

Raisa
 
Laatst bewerkt:
Laat eens een opstelling zien!!
 
Jaaaaa:d

deels maar ik wil dat het alleen veld verplicht wordt als ik geit kiest
 
ik wil dat als ik in kolom A kiest voor kat of hamster dat kolom B verplicht ingesteld moet worden.

Hier staat toch iets anders !! Leg het nog eens uit als je het anders wil.
 
Je snapt toch ook wel dat een geit geen kattenvoer van 0-12 maand oud mag:d

@Raisa85,
Het lijkt mij dat de volgorde van de invoertabel andersom moet.
Dier, leeftijd, voeding lijkt mij logischer.

Je kan even zoeken op getrapte validatie om het een en ander voor elkaar te krijgen.

Ik neem aan dat de bedoeling is dat je eerst een dier kiest, dan de leeftijd en dan de voeding?
 
@Cobbe,

Ja whahahahha... het is maar een voorbeeld.
omdat het vertrouwelijke informatie bevat kan ik het oorspronkelijke document niet uploaden.
Maar dat is ongeveer de bedoeling.

ik wil niet dat voeding verplicht wordt gesteld bij alle diersoorten maar alleen bij geit.

Dus stel ik heb in kolom A 10 diersoorten. kolom B leeftijd en kolom C voeding.
dan wil ik een combinatie maken; Als kolom A ''kat'' of ''hamster'' of ''geit'' is dan moet kolom C verplicht worden ingevuld.
als het leeg is komt er een msgbox.
als waarde wordt ingevuld in kolom C dan pas kan ik verder.
 
Laatst bewerkt:
Op wie reageer je nu? Je kan de code van Cobbe toch vrij eenvoudig aanpassen zodat deze alleen van toepassing is als er geit gekozen wordt.

Als de rest ook gelukt is mag je de vraag op opgelost zetten.
 
@ vena,

Ik reageer op wat Cobbe laatst heeft gestuurd.
Het is nog niet helemaal gelukt. En hoe ik die code moet aanpassen op een specifiek waarde in plaats van alles wat er in de kolom of cel wordt ingevuld weet ik niet.
 
@ Cobbe

Als het niet al teveel is gevraagd zou u de stappen voor me kunnen beschrijven. Omdat het wil mij maar niet lukken om de formule in het orginele bestand toe te passen.

Sorry ben niet zo handig met excel.

Alvast bedankt
 
Nu met een beetje uitleg, dit moet toch wel lukken denk ik zo:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' als er iets fout loopt springen naar oeps om zeker te zijn dat de EnableEvents op True staan
On Error GoTo oeps
With Application
     .EnableEvents = False
' voor elke cel in bereik A5:A11
 For Each cl In Range("A5:A11")
' als cie cel "geit" bevat en kolom C op dezelfde rij is leeg dan
  If cl = "geit" And cl.Offset(, 2) = "" Then
' toon bereichtje met het celadres waar iets dient ingevuld te worden1
   MsgBox "Voeding ingeven in cel " & cl.Offset(, 2).Address
' spring naar die cel
    cl.Offset(, 2).Select
  End If
' volgende cel
 Next
' afhandelen en sluiten
oeps:
     .EnableEvents = True
End With
End Sub
 
@Cobbe

Stel dat ik in deze formule meerdere waarde wilt toevoegen hoe moet wordt het formule dan ?

I heb dit geprobeeerd maar het lukte niet:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' als er iets fout loopt springen naar oeps om zeker te zijn dat de EnableEvents op True staan
On Error GoTo oeps
With Application
.EnableEvents = False
' voor elke cel in bereik A5:A11
For Each cl In Range("A5:A11")
' als cie cel "geit" bevat en kolom C op dezelfde rij is leeg dan
If cl = "waarde" or "waarde" or "waarde" or "waarde" And cl.Offset(, 2) = "" Then
' toon bereichtje met het celadres waar iets dient ingevuld te worden1
MsgBox "Voeding ingeven in cel " & cl.Offset(, 2).Address
' spring naar die cel
cl.Offset(, 2).Select
End If
' volgende cel
Next
' afhandelen en sluiten
oeps:
.EnableEvents = True
End With
End Sub
 
Ik denk dat het zo moet lukken, als dit toch de bedoeling is:
Code:
If cl = "waarde1" or  cl = "waarde2" or cl = "waarde3" or cl = "waarde4" And cl.Offset(, 2) = "" Then
 
Doe zo eens de test:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo oeps
With Application
     .EnableEvents = False
 For Each cl In Range("A5:A11")
  If cl = "geit" Or cl = "koe" Or cl = "hond" Then
   If cl.Offset(, 2) = "" Then
    MsgBox "Voeding ingeven in cel " & cl.Offset(, 2).Address
     cl.Offset(, 2).Select
   End If
  End If
 Next
     .EnableEvents = True
End With
oeps:
End Sub
 
Nou krijg ik een melding...

ontbreeekt foutopsporing.
End if zonder blok If
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan