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

Sheets(Telecom).Range("D2").Value = "Ja" werkt niet

Status
Niet open voor verdere reacties.

Ramsje

Gebruiker
Lid geworden
2 dec 2014
Berichten
70
Beste,

Momenteel loop ik vast op dit stukje code. Ik snap niet waarom dit niet goed is, maar misschien heb ik een klein fout

Code:
Sub Behaald_invullen()

    If BehaaldJa11.Value = True Or BehaaldNee11.Value = True Then
        ' Dan wegschrijven naar sheet
        MsgBox "Ja"
 [B][COLOR="#FF0000"]       Sheets(Telecom).Range("D2").Value = "Ja"[/COLOR][/B]
    ElseIf BehaaldNee11.Value Then
        MsgBox "Nee"
        ' Dan wegschrijven naar sheet
        Sheets(Telecom).Range("D2").Value = "Nee"
    Else
        MsgBox "Vul in of de toezeggingen behaald zijn"
    End If


End Sub

Wat doe ik fout? Ik krijg namelijk de foutmelding: "Het subscript valt buiten het bereik"

De sheet: Telecom bestaat, Range D2 bestaat en kan ingevuld worden.

Met vriendelijke groet,

Ramsje
 
Er zitten wel meer "schoonheidsfoutjes" in.
Code:
Sub Behaald_invullen()

    If BehaaldJa11.Value = True Or BehaaldNee11.Value = True Then
        ' Dan wegschrijven naar sheet
        MsgBox "Ja"
        Sheets(Telecom).Range("D2").Value = "Ja"
[COLOR=#ff0000]    ElseIf BehaaldNee11.Value Then
        MsgBox "Nee"
        ' Dan wegschrijven naar sheet
        Sheets(Telecom).Range("D2").Value = "Nee"[/COLOR]    
    Else
        MsgBox "Vul in of de toezeggingen behaald zijn"
    End If


End Sub
De hele ElseIf-clausule wordt nooit gehaald, m.a.w. het resultaat is nooit "nee".
 
Er zitten wel meer "schoonheidsfoutjes" in.
Code:
Sub Behaald_invullen()

    If BehaaldJa11.Value = True Or BehaaldNee11.Value = True Then
        ' Dan wegschrijven naar sheet
        MsgBox "Ja"
        Sheets(Telecom).Range("D2").Value = "Ja"
[COLOR=#ff0000]    ElseIf BehaaldNee11.Value Then
        MsgBox "Nee"
        ' Dan wegschrijven naar sheet
        Sheets(Telecom).Range("D2").Value = "Nee"[/COLOR]    
    Else
        MsgBox "Vul in of de toezeggingen behaald zijn"
    End If


End Sub
De hele ElseIf-clausule wordt nooit gehaald, m.a.w. het resultaat is nooit "nee".

Klopt, ik had dit ook opgemerkt dat hier nooit Nee kwam te staan. Bij Python hoef je niet = True er achter te typen. Ik ben er achter gekomen dat dit bij VBA wel noodzakelijk is.

Alsnog bedankt voor de reactie.

Ramsje
 
Bij Python hoef je niet = True er achter te typen. Ik ben er achter gekomen dat dit bij VBA wel noodzakelijk is.

Pertinent onjuist wat je hier zegt. Jouw codefragment bevat een logische fout. Een denkfout zeg maar.
 
Pertinent onjuist wat je hier zegt. Jouw codefragment bevat een logische fout. Een denkfout zeg maar.

Ik heb iniedergeval het stukje aangepast destijds, omdat ik er inderdaad achter kwam dat die Nee niet werkte. Echter werkt die nu wel.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan