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

Het wijzigen van een Range

Status
Niet open voor verdere reacties.

PaDalton

Gebruiker
Lid geworden
17 jun 2021
Berichten
32
Beste mensen,

Onderstaande code werkt bij mij naar volle tevredenheid.
Wat ik mij afvraag is of ik de Range kan wijzigen in bepaalde cellen.
De code zou eigenlijk alleen maar moeten werken in cel B8, B13, B18, B23, B28, B33....t/m B253.
Zoals je ziet is de tussenruimte steeds 4 cellen. Daar staat bij mij nl. wat anders in en die mogen niet gewijzigd worden.

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim rMyRg As Range

    Set rMyRg = Range("B8:B257")
    Set rMyRg = Application.Intersect(rMyRg, Target)

    If Not rMyRg Is Nothing Then
        If UserForm1.Visible = False Then
            UserForm1.Show
        End If
    End If

    Set rMyRg = Nothing
End Sub
 
Vervang alles door dit.

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 If Not Intersect(Target, Range("B8:B257")) Is Nothing And (Target.Row - 3) Mod 5 = 0 Then
    If UserForm1.Visible = False Then UserForm1.Show
    Cancel = True
 End If
End Sub
 
Laatst bewerkt:
Code:
 If UserForm1.Visible = False

Lijkt me totaal overbodig.

Als het formulier zichtbaar is kun je niet dubbelklikken in een cel met 'Showmodal = true'.
Als 'showmodal op false' staat is het formulier al zichtbaar of wordt dan zichtbaar.
 
Zoals je ziet is de tussenruimte steeds 4 cellen. Daar staat bij mij nl. wat anders in en die mogen niet gewijzigd worden.
Lijkt mij eerder een slecht ontwerp van het werkblad.
 
Ik vermoed dat Target.Row Mod 5 = 3 ook werkt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan