• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Soru CheckBoxları döngüye dahil etme !!

Katılım
12 Ekim 2010
Mesajlar
224
Excel Vers. ve Dili
2013 türkçe
alt alta dizili 31 adet Check Box var ve her satır için bir tanesine tik koyarak formüle farklı bir yön vermek istiyorum
Dongüyü yazarken ilk checkboxu dahil ettim ama diğer 30 checkboxa bir çözüm bulamadım
Formülün ilk başındaki if ile başlayan komut checkboxa yön veriyor.
31 adet checkboxu da bu döngünün içine nasıl dahil edebilirim. Checbox tik aldığında P13 hücresi 1 alıyor Formülü paylaşıyorum

Dim i As Integer

For s = 13 To 43

If Worksheets("Düzenle").CheckBoxBir.Value = True Then
Range("P13").Value = ("1")
ElseIf Range("F" & s).Value = ("") Then
Range("P" & s).Value = ("")
ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac50").Value Then
Range("P" & s).Value = ("-")

ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac51").Value Then
Range("P" & s).Value = 1 / 3

ElseIf Range("j" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac51").Value Then
Range("P" & s).Value = ("-")

ElseIf Range("j" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac51").Value Then
Range("P" & s).Value = 1 / 3

ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac51").Value Then
Range("P" & s).Value = 2 / 3
End If
Next s

s = Empty
 
Eğer sayfada 31 adet CheckBox tan başka bir nesne yoksa aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub TETS()
    
    Dim i As Integer
    Dim s As Integer
    For s = 13 To 43
        If Worksheets("Düzenle").Shapes(s - 12).Value = True Then
            Range("P13").Value = ("1")
        ElseIf Range("F" & s).Value = ("") Then
            Range("P" & s).Value = ("")
        ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac50").Value Then
            Range("P" & s).Value = ("-")
        ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac51").Value Then
            Range("P" & s).Value = 1 / 3
        ElseIf Range("j" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value < Worksheets("Düzenle").Range("ac51").Value Then
            Range("P" & s).Value = ("-")
        ElseIf Range("j" & s).Value > Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac51").Value Then
            Range("P" & s).Value = 1 / 3
        ElseIf Range("j" & s).Value < Worksheets("Düzenle").Range("ac50").Value And Range("m" & s).Value > Worksheets("Düzenle").Range("ac51").Value Then
            Range("P" & s).Value = 2 / 3
        End If
    Next s
    s = Empty
End Sub
 
Checkbox tan başka bir çok nesne var. Acaba ne gibi bir sorun olur kullanmayı denersem ?
 
Örnek dosyanızı ekleyerek yapmak istediğiniz işlemi açıklarsanız yardım almanız kolaylaşır.
 
Geri
Üst