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

cel leegmaken

Status
Niet open voor verdere reacties.

edvanan

Gebruiker
Lid geworden
16 feb 2005
Berichten
33
Hallo forumvrienden,
Ik heb een probleem met het leegmaken van een cel.
Wanneer cel H14 iets staat mag ik in cel I14 een getal invullen.Maar als cel H14 leeg wordt gemaakt d.m.v. een validatie in cel B3 moet dat getal in cel I14 verwijdert worden en is deze cel dus leeg en mag ik er ook niets meer kunnen invullen ,dus geblokkeerd.
Ik heb al een beetje met vb geprobeerd maar het werkt niet helemaal.
Option Explicit

Code:
Sub BijWijzigen()
    If Range("H14") = "aantal verdreven trede" Then
         Sheets("werkblad4").Range("I14").Value
    
    Else
       If Range("H14") = "" Then
       Range("I14").ClearContents
      End If
   
    End If
   
    

End Sub


Wie ken me verder helpen a.u.b.
Alvaste bedankt jongens.

Eddy:confused:
 
Laatst bewerkt door een moderator:
Maak in de sheet waarin de cellen worden gevalideerd gebruik van de subroutine "Private Sub Worksheet_Change(ByVal Target As Range)". Hier kun je afvangen welke cel gewijzigd wordt (namelijk Target As Range) en dus ook welke (validatie)actie je daarna wilt doen.

Hopelijk kun je hier iets mee... Succes!
 
Ik snap ook niet hoe je met een validatie een cel wilt leegmaken, maar als je H14 leeg kan maken dan is de code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$H$14" And Target.Value = "" Then Range("I14").ClearContents
End Sub
 
Dag boys,
De formule werkt nog niet helemaal.
Het getal in I14 wordt niet gewist wanneer cel H14 leeg is en wordt ook niet geblokkeerd!!!
Ik heb hier echt geen idee hoe ik dit moet oplossen.

Code:
'Private Sub Worksheet_Change(ByVal Target As Range)
'
'     If Range("Gh14").FormulaR1C1 = ("") Then
'        Range("I14").ClearContents
'    Else
'            Range("Gh14") = ("aantal verdreven trede")
'
'     Range("I14").Select
'    End If
'
'Range("I14").Select

Dit werkt ook niet want cel I14 wordt telkens leeggemaakt ook als cel H14 gevuld is

Wie heeft er een oplossing???
Alvaste bedankt

Eddy
'End Sub
 
Laatst bewerkt door een moderator:
Dag boys,
De formule werkt nog niet helemaal.
Het getal in I14 wordt niet gewist wanneer cel H14 leeg is en wordt ook niet geblokkeerd!!!
Ik heb hier echt geen idee hoe ik dit moet oplossen.
Ik hoop dat dit de laatste keer is dat ik je post moet aanpassen. S.v.p. lees dit even.
 
Hallo vrienden,
Ik heb er voor de duidlijkheid een bestandje bijgevoegd.
Dit zal jullie wel wat meer zeggen.
Sorry

Bedankt voor de eerder reacties

Eddy
 

Bijlagen

Edvanan, Om welke cellen gaat het nu precies? In je tekst heb je 't over H14 en I14 maar in je codeblokje verwijs je naar cel GH14.... Het lijkt me dus niet zo vreemd dat het niet zo werkt als je verwacht....
Maak er trouwens ook maar dit van
Code:
Range("H14").Value = ""

En voor wat betreft het blokkeren... Is de rest van je sheet beveiligd? Als dat zo is, kan je de beveiliging in die cel ook meenemen. Je kan het trouwens ook afvangen met validatie in de sheet zelf.

Groet, Leo
 
Ik heb de cellen G14 en H14 samengevoegd.
Nu wist ik ook niet welke cel ik moest nemen.

Ik ga u voorstel nog eens proberen

Alvaste bedankt

Eddy
 
Eddy, Ho stop!!! Ik had jouw bestandje nog niet gezien tijdens mijn reactie... Samenvoegen geeft dikwijls problemen. In dit geval kies je voor cel G14.
Maar pas op! Met het veranderen van de waarde in cel B3 wordt de formule in cel G14 direct overschreven.
Ik snap dus nog niet helemaal waar je naartoe wilt.Want die formule geeft nooit 'niets' als resultaat...

Groet, Leo
 
Laatst bewerkt:
Waar ik naartoe wil is wanneer ik een trap kies met een kwartslag er een aantal verdreven trede moeten ingevuld worden, maar wanneer ik kies voor een rechte trap of zwaaitrap of spiltrap of spiltrap met buitenwang verdwijnt in cel "aantal verdreven trede" en moet het cijfer wat in cel I14 ook gewist worden en geblokkeerd.

Alvaste bedankt

Eddy
 
Dag,
Ik heb het opgelost maar ik heb zo 2gevallen en ik weet niet hoe ik deze 2 macro's bij elkaar kan voegen!!!


Code:
[U][COLOR="White"][COLOR="Red"]Private Sub Worksheet_Change(ByVal Target As range)[/COLOR][/COLOR][/U]

   If Intersect(Target, range("d11")) Is Nothing Then Exit Sub


    If range("d11").Value = "rechte steektrap" Or range("d11").Value = "zwaaitrap" Or range("d11").Value = "spiltrap" Or range("d11").Value = "spiltrap met buitenwang" Then 'Or "zwaaitrap" Or "spiltrap" Or "spiltrap met buitenwang"' Then
      range("g14:i14").ClearContents
   Else
       If range("d11").Value = "trap met 1x kwartslag" Or range("d11").Value = "trap met 2x kwartslag" Then
         range("g14").Value = "aantal verdreven trede="
         range("g14").Activate
          range("I14").Select


   End If
    range("i14").Select
         End If


End Sub

[COLOR="Red"][U]Private Sub Worksheet_Change(ByVal Target As range)[/U][/COLOR]

    If Intersect(Target, range("d15")) Is Nothing Then Exit Sub

    If range("d15").Value = "" Then
        range("h15:h16").ClearContents


    Else
       range("d15").Activate


    End If
    range("h15").Select

End Sub

Worksheet_Change is dubbel in gebruik


Toch bedankt voor mij verder te helpen

Eddy
 
Laatst bewerkt door een moderator:
Ik hoop dat dit de laatste keer is dat ik je post moet aanpassen.

Dat had je maar gedacht ;)

Private Sub Worksheet_Change(ByVal Target As range)

If Intersect(Target, range("d11")) Is Nothing Then Exit Sub


If range("d11").Value = "rechte steektrap" Or range("d11").Value = "zwaaitrap" Or range("d11").Value = "spiltrap" Or range("d11").Value = "spiltrap met buitenwang" Then 'Or "zwaaitrap" Or "spiltrap" Or "spiltrap met buitenwang"' Then
range("g14:i14").ClearContents
Else
If range("d11").Value = "trap met 1x kwartslag" Or range("d11").Value = "trap met 2x kwartslag" Then
range("g14").Value = "aantal verdreven trede="
range("g14").Activate
range("I14").Select


End If
range("i14").Select
End If


End Sub

Private Sub Worksheet_Change(ByVal Target As range)

If Intersect(Target, range("d15")) Is Nothing Then Exit Sub

If range("d15").Value = "" Then
range("h15:h16").ClearContents


Else
range("d15").Activate


End If
range("h15").Select

End Sub

Worksheet_Change is dubbel in gebruik


Toch bedankt voor mij verder te helpen

Eddy
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan