Aşağıdaki gibi bir kod bloğum mevcut, burada kodlardaki amaç seçilen OptionButtonuna göre Textbox2 miktara bakarak, ilgili aralıkları yazdırmak;
Örnek veriyorum;
Eğer OptionButton8 seçili ise , Formda B sütununa bakacak bu sütundaki "X-B.E." yazılı
hücrelerin arasında ne kadar satır sütun "B1:V" metin var hepsini Textbox2 değeri kadar yazdıracak.
Benim amacım ise şu ben iki tane daha OptionButton koymak istiyorum. OptionButton13 ve OptionButton14;
Eğer OptionButton 13 seçili ise, Textbox2 değerine bakmadan,
"X-B.E." arasındaki değerlerden 10 adet
"X-G1" arasındaki değerlerden 4 adet
"X-C2" arasındaki değerlerden 6 adet
yazdırmasını istiyorum.
Eğer OptionButton 14 seçili ise, Textbox2 değerine bakmadan,
"X-B.Y." arasındaki değerlerden 10 adet
"X-G2" arasındaki değerlerden 4 adet
"X-C2" arasındaki değerlerden 6 adet
yazdırmasını istiyorum. Teşekkür ederim.
- Kod: Tümünü seç
Private Sub CommandButton2_Click()
Dim Aranan As String, Son As Long, Bul1 As Range, Bul2 As Range
If OptionButton7 Then
Aranan = "X-B.E."
ElseIf OptionButton8 Then
Aranan = "X-B.Y."
ElseIf OptionButton9 Then
Aranan = "X-G1"
ElseIf OptionButton10 Then
Aranan = "X-G2"
ElseIf OptionButton11 Then
Aranan = "X-C1"
ElseIf OptionButton12 Then
Aranan = "X-C2"
ElseIf OptionButton13 Then
MsgBox "Tamamını çıktı almak doğru bir adım değil, Tek sayfada gösterim Verileri okunaksız hale gelir. <çıktı vermeyecektir.>", , vbCritical
Aranan = "*"
End If
Son = Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
If Aranan = "*" Then
Range("B1:V" & Son).PrintOut , , TextBox2
Else
Set Bul1 = Range("B:B").Find(Aranan, Range("B" & Son), , xlWhole)
Set Bul2 = Range("B:B").Find(Aranan, Bul1, , xlWhole)
If Not Bul1 Is Nothing And Not Bul2 Is Nothing Then
Range("B" & Bul1.Row & ":V" & Bul2.Row).PrintOut , , TextBox2
Else
MsgBox "Aranan kriter bulunamadı!", vbCritical
End If
End If
End Sub