Frame1 üzerinde seçilen optionbuttonun captionuna göre belirtilen yoldaki resmi yükle

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Frame1 üzerinde seçilen optionbuttonun captionuna göre belirtilen yoldaki resmi yükle makrosu nasıl yazılır?

ben deneme amacıyla command buton ile istediğimi başardım ama bunun otomatik olmasını istiyorum:

USERFORM
Kod:
Private Sub CommandButton1_Click()
    Dim CtrlOpt As Control
    Dim optSecim As String
[COLOR=red]'*\ Seçilen Option butonunun başlığını tespit ettik[/COLOR] 
    For Each CtrlOpt In Me.Frame1.Controls
        If (TypeName(CtrlOpt) = "OptionButton" And CtrlOpt.Value = True) Then
            optSecim = CtrlOpt.Caption
'GoTo ResumeSub:
        Else
        'MyMsg = "Secili yok...."
        End If
    Next
'ResumeSub:
[COLOR=red]'*\ve image1 e yükledik.[/COLOR]
frmRes = klsrAddIns & AppPthSept & "AddInsResim" & AppPthSept & optSecim & ".JPG"  'icon yolu
Image1.Picture = LoadPicture(frmRes)
End Sub

Kod:
Private Sub UserForm_Activate()
Call KlsrDgr
'Dim dsyIco$
'dsyIco = klsrAddIns & AppPthSept & "AddInsResim" & AppPthSept & "BitTorrentFolder1.ico"  'icon yolu
'Call UserformlardaEkOzellik(Me, , , True, True, False, True, False, False, True, True, dsyIco)
End Sub
MODULE
Kod:
Sub KlsrDgr()
    AppPthSept = Application.PathSeparator
    klsrBlglrm = CreateObject("WScript.Shell").SpecialFolders("MyDocuments")
    klsrAddIns = Environ("appdata") & AppPthSept & "Microsoft" & AppPthSept & "AddIns"
End Sub
Ancak ben Frame1 üzerinde seçilen optionbutton değiştiğinde İmage1 üzerindeki resminde değişmesini istiyorum mümkün mü?
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Dosyayı ekledim

Option Butonu seçtiğimde ilgili resim gelsin,
Command butona basınca Seçili OptionButtonun başlığına bağlı olarak
mümkünse Baslik_cagir makrosu gelsin
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,728
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Ekteki örnek dosyayı incelermisiniz. Class Module ile hazırlanmıştır.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Alternatif:

CommanButton için yazdığınız kodları Frame1_MouseMove olayına yazarsanız, Class Module kullanmadan da amacınıza ulaşırsınız.

OptionButton seçip, fareyi biraz hareket ettirin, yeter...

.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Hocam Emeğinize Sağlık çok güzel olmuş bana 4 adet optbutonlu lazımdı ekledim hallettim de,
Sadece Frame1 içindeki option butonlarlar sınırlamak mümkün mü?
yani formun geneli üzerine başka obtb koyunca veya frame2 ye koyunca onlar dahil olmasın, ayrıca IptionButton1,2,3 gb gitmek zorunda galiab ayzdığınız prosodürde
isim bağımsız yapmak mümkün mü?
Şu an için işimi görüyor, sınırlamaları kırmanın yolları varmı diye soruyorum müsait bir zamanınızda da cevap verseniz olur acelesi yok.
Saygılarımla....
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Alternatif:

CommanButton için yazdığınız kodları Frame1_MouseMove olayına yazarsanız, Class Module kullanmadan da amacınıza ulaşırsınız.

OptionButton seçip, fareyi biraz hareket ettirin, yeter...

.
Kod:
Private Sub Frame1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Call KlsrDgr
    Dim CtrlOpt As Control, frmRes$
    Dim optSecim As String
    For Each CtrlOpt In Me.Frame1.Controls
        If (TypeName(CtrlOpt) = "OptionButton" And CtrlOpt.Value = True) Then
            optSecim = CtrlOpt.Caption
            frmRes = klsrAddIns & AppPthSept & "AddInsResim" & AppPthSept & optSecim & ".JPG"  'icon yolu
                If frmRes <> "" Then Image2.Picture = LoadPicture(frmRes)
        End If
    Next
End Sub
Hocam bu hale getirmemi sitediğiniz anladım. ve ayarladım mouse kullanırken sorun yok ancak ben genelde mouse kullanam uf ler üzerinde ok tuşları ve enterla her işimi hallederim... bu şekilde classız çöüzm öneriniz var mı?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,728
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Zaten a&#351;a&#287;&#305;daki kodda s&#305;n&#305;rlama eklenmi&#351; oluyor. Ard&#305;&#351;&#305;k olmayan kontroller i&#231;inde &#231;&#246;z&#252;m &#252;retilebilir tabiki. Frame1 i&#231;ine ald&#305;&#287;&#305;n&#305;z kontrol say&#305;s&#305; kadar d&#246;ng&#252; yap&#305;larak &#231;&#246;z&#252;me ula&#351;&#305;labilir.

K&#305;rm&#305;z&#305; renkli de&#287;er ile s&#305;n&#305;rlama sa&#287;lanm&#305;&#351; oluyor.

Kod:
Private Sub UserForm_Initialize()
    Dim X As Byte
    ReDim Preserve OPTB([COLOR=red]3[/COLOR])
    For X = 1 To [COLOR=red]3[/COLOR]
    Set OPTB(X).OPTB = Controls("OptionButton" & X)
    Next
End Sub
 
Üst