loop

Status
Niet open voor verdere reacties.

DominiqueAegten

Gebruiker
Lid geworden
16 mrt 2016
Berichten
23
Hoe kan ik onderstaande in een loop steken zonder dat ik dat 31 keer moet herhalen?
Dank bij voorbaat

If OptionButton1Cel1.Value = True Then 'SBS DER schrijft 7SD801 naar juiste cel 1
Range("X44") = ("7SD801")
Else: Range("X44") = ("7SD803")
End If
Next

If OptionButton1Cel2.Value = True Then 'SBS DER schrijft 7SD801 naar juiste cel 2
Range("X45") = ("7SD801")
Else: Range("X45") = ("7SD803")
End If
Next

If OptionButton1Cel3.Value = True Then 'SBS DER schrijft 7SD801 naar juiste cel 3
Range("X46") = ("7SD801")
Else: Range("X46") = ("7SD803")
End If
Next
 
Zonder document valt er weinig te testen. Probeer het zo maar eens:
Code:
    Dim i As Integer
    Dim w As String
    
    For i = 1 To 31
        w = "7SD803"
        If Me.Controls("OptionButton1Cel" & i) Then w = "7SD801"
        Cells(43 + i, 24) = w
    Next i
 
Laatst bewerkt:
Jaaaa super, dit werkt. Hartelijk dank Edmoor.

Nu zou ik AAN deze formule nog een voorwaarde willen koppelen.
Cells (43 + i, 24) = w enkel en alleen op voorwaarde dat er in cel A44 tem A73 de tekst 'Bedr DER Aankomstveld' staat.
Is dat mogelijk?
 
Zoiets?
Code:
    Dim i As Integer
    Dim w As String
    
    For i = 1 To 31
	If Cells(43 + i, 1) = "Bedr DER Aankomstveld" Then
            w = "7SD803"
            If Me.Controls("OptionButton1Cel" & i) Then w = "7SD801"
            Cells(43 + i, 24) = w
	End If
    Next i
 
Laatst bewerkt:
Nee toch ?


Code:
Range("X44:X75") = iif(OptionButton1Cel1.Value,("7SD801"), ("7SD803"))
 
Hoe kijkt die naar OptionButton1Cel1 t/m OptionButton1Cel31? Je bedoeld dit?
Code:
    Dim i As Integer
    
    For i = 1 To 31
        If Cells(43 + i, 1) = "Bedr DER Aankomstveld" Then
            Cells(43 + i, 24) = IIf(Me.Controls("OptionButton1Cel" & i), "7SD801", "7SD803")
        End If
    Next i

Is inderdaad netter :)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan