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

Celinhoud aanpassen

Status
Niet open voor verdere reacties.

Evelthoven

Gebruiker
Lid geworden
26 sep 2006
Berichten
690
Goedemorgen,

De vraag gaat over het wijzigen van de inhoud van bepaalde cellen (zie aub. het bijgevoegde bestand)

Gr.
Eric
 

Bijlagen

eric,

je vraag bevat een tegenstrijdigheid: als in D2 een x staat, .... moet in D2 een L komen. dus je moet sowieso via VBA gaan. je kan ook met een extra kolom werken en dan met aantal.als werken.

steven
 
Als cel D2 een x bevat moet in deze cel een L verschijnen. Dan kun je net zo goed gelijk en L invullen. Kun je wat meer informatie geven m.b.t. je bestand? Wat is de inhoud van de kolommen bv?

Groeten,

M.
 
De werkelijke inhoud is ook altijd een X, maar de bedoeling is dat D2 als laatste wordt gevuld met een X. Dit betekent dan dat in B2 en C2 al een X staat. Dus zodra er 3 keer een X staat dat dan pas de V komt te staan in B2, de O in C2 en de L in D3 en om het helemaal af te maken dat dan ook deze 3 cellen geel gekleurd worden.

Dit bestand gebruik ik om bij een spel (darten) de stand bij te houden.
 
Zoiets?

Code:
Private Sub Worksheet_Change(ByVal target As Range)

    If Range("B2").Value = "x" And Range("C2").Value = "x" And Range("D2").Value = "x" Then
            
            Application.EnableEvents = False
        
            Range("B2").Value = "V"
            Range("C2").Value = "O"
            Range("D2").Value = "L"
            
            Application.EnableEvents = True
    End If
   
End Sub

Moet wel zeggen dat het niet erg handig is, want deze is geldig alleen voor de cellen C2 B2 en D2 :)
 
Probeer deze eens (zet de code achter je werkblad):
Code:
Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("D2")) Is Nothing Then
        If Range("D2") = "X" Or Range("D2") = "x" Then
            Range("B2") = "V"
            Range("C2") = "O"
            Range("D2") = "L"
        End If
    End If
    
End Sub

@ Jantje,
Scheelde niet veel :)
 
Laatst bewerkt:
Jan Jantje en Demeter,

Bedankt, de code werkt. Het is inderdaad niet zo handig want hij werkt alleen voor rij 2 in dit geval. Eigenlijk is het de bedoeling dat hij voor de volgende rijen ook werkt.
Doorvoeren zoals met functies gaat hier niet.

Is dit probleem ook nog op te lossen ?

Eric
 
Code:
Private Sub Worksheet_Change(ByVal target As Range)
    
    If Not Intersect(target, Cells.Columns(4)) Is Nothing Then
        With target
            If .Offset(, -2).Value = "x" And .Offset(, -1).Value = "x" And .Value = "x" Then
                Application.EnableEvents = False
                .Offset(, -2).Value = "V"
                .Offset(, -1).Value = "O"
                .Value = "L"
                Application.EnableEvents = True
            End With
        End If
    End If
End Sub

Wigi
 
Wigi, ook bedankt voor je reactie.

Ook dit heb ik meteen geprobeerd, maar er gaat iets mis want ik krijg een melding te zien:

Compileerfout:
End With zonder With

Kun je hier iets mee ?
 
Sorry Wigi,

Heb zelf wat geprobeerd en heb het bij toeval ontdekt.
End With en End If waren omgedraaid.

Eric
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan