• DİKKAT

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

ComboBoxla UserForm açma

Katılım
8 Haziran 2007
Mesajlar
401
Excel Vers. ve Dili
excel fonksiyonlar
Forumda emeği geçen herkese merhaba. Arkadaşlar varsayalım ki çok sayıda UserForm ile çalışıyoruz. Bunları bir comboboxta listeleyip comboboxdaki seçime göre açmamız mümkün mü ? Örneğin UserForm1 üzerinde oluşturmuş olduğumuz
ComboBox1 de UserForm2 , UserForm3 , UserForm4 listelenmiş olsun. ComboBox1' den UserForm2 yi seçtiğimde UserForm2 açılsın. Böyle bir kod mümkün mü ? İlgilenen arkadaşlara şimdiden teşekkürler. :)
 
Forumda emeği geçen herkese merhaba. Arkadaşlar varsayalım ki çok sayıda UserForm ile çalışıyoruz. Bunları bir comboboxta listeleyip comboboxdaki seçime göre açmamız mümkün mü ? Örneğin UserForm1 üzerinde oluşturmuş olduğumuz
ComboBox1 de UserForm2 , UserForm3 , UserForm4 listelenmiş olsun. ComboBox1' den UserForm2 yi seçtiğimde UserForm2 açılsın. Böyle bir kod mümkün mü ? İlgilenen arkadaşlara şimdiden teşekkürler. :)

kod
Kod:
Private Sub CommandButton1_Click()
Dim TempForm
Set TempForm = ActiveWorkbook.VBProject.VBComponents(ComboBox1.Value).CodeModule
VBA.UserForms.Add(TempForm.Name).Show 0
End Sub
 
Private Sub CommandButton1_Click()
If ComboBox1.Value = "userform2" Then
UserForm2.Show
End If
If ComboBox1.Value = "userform3" Then
UserForm3.Show
End If
If ComboBox1.Value = "userform4" Then
UserForm4.Show
End If
If ComboBox1.Value = "userform5" Then
UserForm5.Show
End If
End Sub

Private Sub UserForm_Initialize()
ComboBox1.AddItem "userform1"
ComboBox1.AddItem "userform2"
ComboBox1.AddItem "userform3"
ComboBox1.AddItem "userform4"
ComboBox1.AddItem "userform5"
End Sub
 
kod
Kod:
Private Sub CommandButton1_Click()
Dim TempForm
Set TempForm = ActiveWorkbook.VBProject.VBComponents(ComboBox1.Value).CodeModule
VBA.UserForms.Add(TempForm.Name).Show 0
End Sub

Hocam Run-time error '9'
Subscript out of range diye bir hata veriyor. Set ile başlayan satırı da sarıya boyuyor.
 
Hocam Run-time error '9'
Subscript out of range diye bir hata veriyor. Set ile başlayan satırı da sarıya boyuyor.

not
Bukodu hangi userformda çalıştırıyorsan ya userformun Showmodal özelliğini False yapacaksın yada yukarıdaki koddan önce aktif userformu kapatacaksın.

Kod:
Private Sub CommandButton1_Click()
[COLOR=red]UserForm1.Hide[/COLOR] 'aktif yani açık olan userform
Dim TempForm
Set TempForm = ActiveWorkbook.VBProject.VBComponents(ComboBox1.Value).CodeModule
VBA.UserForms.Add(TempForm.Name).Show 0
End Sub
 
not
Bukodu hangi userformda çalıştırıyorsan ya userformun Showmodal özelliğini False yapacaksın yada yukarıdaki koddan önce aktif userformu kapatacaksın.

Kod:
Private Sub CommandButton1_Click()
[COLOR=red]UserForm1.Hide[/COLOR] 'aktif yani açık olan userform
Dim TempForm
Set TempForm = ActiveWorkbook.VBProject.VBComponents(ComboBox1.Value).CodeModule
VBA.UserForms.Add(TempForm.Name).Show 0
End Sub

Sorun çözülmüştür . Teşekkürler Halit hocam.
 
Geri
Üst