Soru Option button tanımlamasını daha kısa nasıl yapabilirim?

Katılım
9 Aralık 2018
Mesajlar
363
Excel Vers. ve Dili
Excel 2019 - 32 bit TR
Altın Üyelik Bitiş Tarihi
10-06-2024
Merhaba,

tek bir userformda yaklaşık 15 adet option button kullanmayı planlıyorum.

kimlik isimli sayfadaki değerler ile ilişkili olacak.

Her nedense bilmem, bu seçeneği kullanırken 2-3 kez excel hata verip kapandı.

Acaba bir yerlerde hata mı yapıyorum?

bir de aynı kodları tekrarlamadan her bir option button'a tanımlama yapmam mümkün mü?

PHP:
Private Sub OptionButton1_Click()
If OptionButton1 = True Then
Worksheets("kimlik").Range("d21") = "Metimazol"
End If
End Sub

Private Sub OptionButton2_Click()
If OptionButton2 = True Then
Worksheets("kimlik").Range("d21") = "PTU"
End If
End Sub

Private Sub OptionButton3_Click()
If OptionButton3 = True Then
Worksheets("kimlik").Range("d21") = "Yok"
End If
End Sub

Private Sub UserForm_Activate()
Select Case Worksheets("kimlik").Range("d21").Value
    Case "Yok"
    OptionButton3 = True
    Case "PTU"
    OptionButton2 = True
    Case "Metimazol"
    OptionButton1 = True
    Case Else
        
End Select
End Sub

teşekkürler
 

Ekli dosyalar

Katılım
6 Temmuz 2015
Mesajlar
926
Excel Vers. ve Dili
2003
Kodlarda bir problem görünmüyor. Alternatif link alabilir miyim.
İşlevselliği konusunda birşey diyemem ama aynı kodları bir arada yazabilmek için aklıma gelen yol ;
Optionbutton'ların yanına bir buton koyarsınız ve kodları buton altına yazarsınız.

if optionbutton1 = true then
Sheets("kimlik").[D21] = "BİR"
elseif optionbutton2 = true then
Sheets("kimlik").[D21] = "İKİ"
elseif optionbutton3 = true then
Sheets("kimlik").[D21] = "ÜÇ"
end if
gibi..


Veya... Yine işlevselliği konusunda bir şey diyemem ama, Optionbutton kodları altında tekrarlayan kodlar var ise; aynı kodları uzun uzun yazmak yerine,
bir modül oluşturup tekrarlayan bu kodu modüle yazar ve her bir optionbutton_click olayından da bu modülü çağırırsınız. Şöyle ki,

sub Tekrarlayan_Kod()
Msgbox "Merhaba"
'Diğer uzun kodlama satırları...
end sub


Private Sub OptionButton1_Click()
run "Tekrarlayan_Kod"
end sub

Private Sub OptionButton2_Click()
run "Tekrarlayan_Kod"
end sub

gibi...
 
Üst