Hallo,
Momenteel gebruik ik deze code om tussen 2 cellen te toggelen.
Als er een x wordt ingevoerd in de ene cel en er staat een x in de naast gelegen cel, dan wordt deze waarde gewist.
Het gaat daarbij om het bereik BA16:BB686
Code werkt goed, maar als ik een kolom ergens in het sheet toevoeg, dan kan ik in deze toegevoegde kolom niets invoegen of ik krijg de melding dat ik foutief heb ingevoerd en dat de invoer wordt aangepast.
Deze melding is ook niet meer weg te krijgen.
Nogmaals code werkt goed, tot dat ik die kolom invoeg.....hoe dit mogelijk is kan ik niet ontdekken.
Kan iemand eens kijken wat er mis is met dit stukje code.
of eventueel aanpassen
Code is een deel van een grote code welke staat onder : Private Sub Worksheet_Change(ByVal Target As Range)
Momenteel gebruik ik deze code om tussen 2 cellen te toggelen.
Als er een x wordt ingevoerd in de ene cel en er staat een x in de naast gelegen cel, dan wordt deze waarde gewist.
Het gaat daarbij om het bereik BA16:BB686
Code werkt goed, maar als ik een kolom ergens in het sheet toevoeg, dan kan ik in deze toegevoegde kolom niets invoegen of ik krijg de melding dat ik foutief heb ingevoerd en dat de invoer wordt aangepast.
Deze melding is ook niet meer weg te krijgen.
Nogmaals code werkt goed, tot dat ik die kolom invoeg.....hoe dit mogelijk is kan ik niet ontdekken.
Kan iemand eens kijken wat er mis is met dit stukje code.
of eventueel aanpassen
Code is een deel van een grote code welke staat onder : Private Sub Worksheet_Change(ByVal Target As Range)
Code:
'Bij keuze voor jaar overname, kan maar op 1 plaats een x geplaatst worden
With Target
If .Count <> 1 Then Exit Sub
If Not Intersect(.Offset, Range("BA16:BB686")) Is Nothing Then 'Range van plaatsen x
Application.EnableEvents = False
If LCase(.Value) = "x" Then .Offset(, IIf(.Column = 53, 1, -1)) = "" 'Als er een x in de ene kolom wordt geplaatst, wordt andere gewist
Application.EnableEvents = True
End If
'Controleren of x wordt geplaatst bij keuze jaar overzicht
'Geen x dan wordt deze invoer aangepast
Dim doel As Range
Dim cel As Range
Set doel = Range("BA16:BB686") 'Range van x bij jaar overzicht keuze
For Each cel In doel
If cel = "x" Then
' x is geplaatst, niks doen
ElseIf cel = vbNullString Then
'Lege cellen, doe niks
Else
MsgBox "Alleen x toegestaan." & vbCr & "Uw invoer wordt aangepast", vbCritical, "Foutieve invoer" 'alleen x invoer is mogelijk
cel = "x"
End If
Next cel
End With