Hoe krijg ik deze VBA Code werkend.

Status
Niet open voor verdere reacties.

Hampert

Gebruiker
Lid geworden
11 nov 2009
Berichten
63
Ik heb op een eerder gesteld vraagstuk de volgende code ( wel een beetje aangepast) van Warm Bakkertje gekregen.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, ["Vraag"]) Is Nothing And Target <> "" Then
            Target = Sheets("Vragen voor Waar of niet waar").Range("A" & Target.Value)
    
    End If
End Sub

Ik wil deze nu uitbreiden tot de volgende code.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, ["Vraag"]) Is Nothing And Target <> "" Then
            Target = Sheets("Vragen voor Waar of niet waar").Range("A" & Target.Value)

    If Not Intersect(Target, ["Antwoord"]) Is Nothing And Target <> "" Then
            Target = Sheets("Vragen voor Waar of niet waar").Range("B" & Target.Value)
        End If
    End If
End Sub
Maar na wat gepruts krijg ik het niet werkend.

hier een voorbeeld: Bekijk bijlage Map1.xls

Wie kan mij hiermee helpen?

Grt en bvd Hampert
 
Laatst bewerkt:
54 x bekeken en nog geen reactie ????
Vraag niet duidelijk of niemand die wil reageren?

Hampert
 
Ik heb het ook bekeken, maar zonder een duidelijke vraagstelling of enig uitleg wat je doet of wat er moet gebeuren, kan ik er niets mee.

Ik zie bv: "Heet jij Kees"; moet ik dit in de 'vraag' cel H20 typen?
 
Oke Harry,

ik ben onduidelijk geweest ik zal proberen het goed te maken.

De code die ik verkregen heb werkt goed.
Als ik in het blad "waar of niet waar" in de cel "vraag" (is H20) een willekeurig cijfer plaats zal( na het verlaten van de cel) in deze cel de waarde van Blad "Vragen voor waar niet waar" Cel " A+ingevoerd cijfer verschijnen.

De Tweede code zou (als het juist werkt) in cel "Antwoord" ( H28) de waarde van Cel "B + ingevoerd cijfer) moeten verschijnen. Allen doet het dit niet. Ik krijg over al de waarde van A+invoer.

Het tweede ( net ontdekt probleem) is dat de functie niet alleen voor de cellen H20 en H28 werken maar over het gehele werkblad ( dit is niet de bedoeling).

Ik hoop dat na deze uitleg het duidelijk is geworden.
 
Werkt het zo beter Harm?
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, Range("H20")) Is Nothing And Target <> "" Then
            Target = Sheets("Vragen voor Waar of niet waar").Range("A" & Target.Value)
            End If
    If Not Intersect(Target, Range("H28")) Is Nothing And Target <> "" Then
            Target = Sheets("Vragen voor Waar of niet waar").Range("B" & Target.Value)
        End If
   End Sub
 
Harry,

Werkt uitstekend zoals ik even getest heb.

Zo zie je maar weer duidelijkheid brengt alles.

Dank je weer voor de moeite.


Even een vraag wat is het verschil van Met of zonder de "range". De code die ik van Warme Bakkertje heb gekregen zonder "range" werkt in een ander bestand perfect????
 
Het doet het dan weer op alle cellen.
Het maakt geen onderscheid in de gedefiniëerde naam H20 of H28.

Zo wel.
Intersect(Target, Range("vraag"))
Intersect(Target, Range("antwoord"))
en zo ook.
Intersect(Target, [vraag])
Intersect(Target, [antwoord])
 
Laatst bewerkt:
Oké. Bedankt voor de uitleg.

Nogmaals dank.

Topic gaat op opgelost !!
 
Ik heb het net nog aangepast zonder de quotes.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan