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

Strij51

Gebruiker
Lid geworden
22 dec 2014
Berichten
45
Goedemorgen


In het testbestandje wordt er ter controle een G geplaatst in kolom F.
Bestaat er de mogelijkheid, al of niet met een vba script, dat bij plaatsing
van de volgende G, een aantal rijen verder, de voorgaande G automatisch gewist wordt in de kolom
De volgende G komt weer een aantal rijen verder en zo gaat dit door.
 

Bijlagen

Laatst bewerkt:
Dat kan vie een Worksheet_Change event:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Target.Column = 6 And UCase(Target.Value) = "G" Then
        Columns("F:F").ClearContents
        Target.Value = "G"
        'Eventueel koptekst weer toevoegen
        'cells(1,6) = "Betaald tot hier?"
    End If
    Application.EnableEvents = True
End Sub
 
Dit is een mogelijkheid. Er zijn nog veel mooiere...

Alfahulpje, jou code is mooier, maar wist HEEL de kolom F. Dus ook de Header
 

Bijlagen

Laatst bewerkt:
Goedemorgen

Nog 1 vraagje:


Is het mogelijk dat het script aangepast kan worden zodat de "G" niet achter een lege rij geplaatst kan worden

maar dan teruggaat naar de oorspronkelijke positie

bedankt alvast
 
ER moet minimaal 1 cel gevuld zijn. Als ze allemaal gevuld moeten zijn moet je "<5" wijzigen in "=0"
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Target.Column = 6 And UCase(Target.Value) = "G" Then
        If WorksheetFunction.CountBlank(Range("A" & Target.Row & ":E" & Target.Row)) < 5 Then
            Columns("F:F").ClearContents
            Target.Value = "G"
        Else
            Target.Value = ""
        End If
    End If
    Application.EnableEvents = True
End Sub
 
Bedankt voor de snelle reactie

sorry
maar ik wat ik eigenlijk bedoelde was aanpassing v/h het script van MvdVlist,
 
Gaat op dezelfde manier:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not Intersect(Range("F:F"), Target) Is Nothing Then
    If WorksheetFunction.CountBlank(Range("A" & Target.Row & ":E" & Target.Row)) < 5 Then
        Range("F1:F10000").ClearContents
        ActiveCell = "G"
    Else
        ActiveCell = ""
    End If
 End If
End Sub
 
maar wist HEEL de kolom F. Dus ook de Header

Wat schets de verbazing?
Code:
Range("[COLOR=#ff0000]F1[/COLOR]:F10000").clearcontents
.....waar zou de header staan?

Anders.
Code:
If Application.CountA(Target.Offset(, -5).Resize(, 5)) Then
columns(6).clearcontents

en:

Code:
Target = "G"

i.p.v. ActiveCell.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan