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

voorwaarden aan cellen

Status
Niet open voor verdere reacties.

rostie-rostelli

Gebruiker
Lid geworden
13 okt 2005
Berichten
229
Hallo,

Ik wil het volgende doen:

Als de waarde in een bepaalde cel aan bepaalde voorwaarden voldoet moet(en) andere cellen vergrendeld worden voor invoer van gegevens.
Vb: als de waarde in cel "A1" groter is dan "600" moeten cellen "A2" en "A3" vergrendeld worden (dus geen invoer van gegevens meer mogelijk)

Hoe kan ik dit voor mekaar krijgen??

Alvast bedankt voor de hulp aan iedereen!!
 
Rostie-rostelli, dit doe je via Data > Validatie > Custom (nederlandse benaming weet ik ff niet, maar het gaat er om dat je een formule kan invullen). Ga in cel B1 staan en klik dan op het hierboven genoemde menu-pad. Ga in het Validatie-venster (optie: Custom) naar het gedeelte waar je een formule in kan vullen. Zet de formule =A1<=600 (En JA! het moet kleiner-gelijk zijn, want je staat de input toe als de formule waar is!:D). Kijk vervolgens of in het 3e tabje het 'Stop' zichtbaar is, en vul hier een passende tekst in. Pas dit ook toe in cel C1.

Groet, Leo
 
Dat kan alleen door het hele blad te beveiligen.
Daarvoor eerst met Ctrl+A alles selecteren en dan door rechtsklikken>Celeigenschappen>Bescherming>Geblokkeerd>Uitvinken
A2 en A3 selecteren en dan Geblokkeerd weer aanvinken

En dan zet dit in je werkbladcode

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If [A1] > 600 Then
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
Else
ActiveSheet.Unprotect
End If
End Sub

Mvg

Piet

P.S. Die van Leo is leuker. Was ik niet zo gauw opgekomen.
 
Laatst bewerkt:
Tilpi,
Tilpi zei:
P.S. Die van Leo is leuker. Was ik niet zo gauw opgekomen
Mijn eerste insteek was ook om gebruik te maken van VBA... Tot dat die validatie me te binnen schoot!:D En ook al ben ik een groot voorstander van gebruik van VBA om Excel die dingen te laten doen die je erg graag wilt, ben ik een NOG groter voorstander van 'eerst de problemen proberen op te lossen met de standaard functionaliteiten die Excel biedt'.:thumb:

Groet, Leo
 
Leo en Piet,

Hartelijk dank voor de informatie!! :thumb: hiermee ben ik al een heel eind op weg, ga het straks allemaal uitproberen en hou jullie op de hoogte...!!

Groetjes, ;)
Danny
 
Hallo,

Hier ben ik weer, de beide oplossingen werken zonder problemen op een "testblad" MAAR!! Het werkblad die ik moet beveiligen heeft reeds een aantal andere beveiligingen, namelijk:
- Het werkblad is passwoord beveiligd zodat enkel in bepaalde cellen gegevens kunnen ingevoerd worden (door via rechts klikken / format cells / protection / locked uit te vinken waar invoer mogelijk is) Dus het VBA script kan ik hierdoor niet gebruiken!!

- Voor bepaalde cellen heb ik reeds een formule ingebracht om "dubbele invoer" te vermijden (door via Data / Validation / costum een bepaalde formule en waarschuwingstekst in te brengen ) Dus de oplossing van Leo kan ik ook al niet gebruiken omdat het nu uitgerekend ook deze cellen zijn die ik moet beveiligen bij waarden boven de "600"

In bijlage het excel document voor enige verduidelijking.(het paswoord is "planbur")

We concentreren ons op de cellen waar voertuigen (nummers van 101 tot 650 vb 101/102 of 201/301/202) kunnen ingevoerd worden, dubbele invoer is niet mogelijk!!

Op o.a rijen 19 en 20 situeren zich de problemen, namelijk:

Als H19 een getal is minder dan 600 moeten J19, L19, H20 en J20 invoerbaar blijven.
Als H19 een getal is boven de 600 moet L19 invoerbaar blijven maar in J19, H20 en J20 mag GEEN invoer mogelijk zijn.

Weet iemand soms raad aub???

Alvast bedankt voor de moeite.

Groetjes,
Danny
 

Bijlagen

Laatst bewerkt:
Probeer het eens hiermee

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If [H19] > 600 Then
ActiveSheet.Unprotect Password:="planbur"
ActiveSheet.EnableSelection = xlUnlockedCells
[J19,J20,H20].Locked = True
ActiveSheet.Protect Password:="planbur", DrawingObjects:=True, Contents:=True, Scenarios:=True
Else
ActiveSheet.Unprotect Password:="planbur"
[J19,J20,H20].Locked = False
ActiveSheet.Protect Password:="planbur", DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub

Succes

Piet
 
Dag Piet,

Heb de code overgenomen en het WERKT !!, :D

Hartelijk dank voor de hulp!! :thumb:en misschien tot nog eens...!!

Groetjes,;)
Danny
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan