Comboboxtan sheetleri açma

Destiny

Altın Üye
Katılım
28 Kasım 2005
Mesajlar
68
Altın Üyelik Bitiş Tarihi
11-12-2025
Burda anlatmak istediğim 2006OCAK 2006ÞUBAT sayfaları varbunları comboboxtan cagırdıgımız zaman örneğin 2006OCAK bana sayfa olarak açılcak yane ben sayfa ismini sectiğimde
Sheets("Sayfa2").Select gibi fakat combodan hangi ismi secersem altta yazan ayı acsın istiyorum umarım acık olmuştur kolay gelsin
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
sayfa aç

butonlara sayfa isimleri vererek buton yardımı ile açmak istiyorsan yardımcı olayım.
 
X

xxrt

Misafir
Sayfada Bulunan ComboBox'a Sayfa Ýsimlerini almak ve geçiÃ

Merhaba,

Sayfa Üzerinde bulunan bir ComboBox1'e (Karma Kutu) sayfa isimlerini aldırmak ve Sayfa İsimlerini ComboBox'tan seçerek seçilen sayfaya gitmek için;

Ã?nce boş bir excel çalışma sayfası açıyoruz.Bu sayfamızın adı Sayfa1 olsun Denetim Araç Kutusundan Karma Kutusunu (ComboBox1)tıklıyarak sayfanın istenilen bir kısmına yerleştiriyoruz.

Daha sonra yerleştirilen ComboBox1'i tıklatarak açılan kod sayfasına aşağıdaki kodları yazıyoruz.

[vb:1:88854149a3]Private Sub ComboBox1_Change()
On Error Resume Next
Sheets(ComboBox1.Text).Select
End Sub[/vb:1:88854149a3]

Daha sonra tekrar excel çalışma sayfamıza geri dönerek Denetin Araç Kutusundaki Tasarım Modundan çıkıyoruz.

Sayfa1'in üzerinde sağ tuşa tıklatarak kod görüntüle seçeneğini tıklatıyoruz.
Çıkan Kod sayfasına da aşağıdaki kodları yazarak Çalışma Kitabında bulunan tüm sayfaları ComboBox1'e alınmasını sağlıyoruz.

[vb:1:88854149a3]Private Sub Worksheet_Activate()
ComboBox1.Clear
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> ActiveSheet.Name Then _
ComboBox1.AddItem Worksheets(i).Name
Next
End Sub
[/vb:1:88854149a3]



UserForm Üzerinde bulunan bir ComboBox1'e Sayfa isimlerini aldırmak ve Sayfa İsimlerini ComboBox'tan seçerek seçilen sayfaya gitmek için;

UserForm1 açarak Toolbox'dan bir adet ComboBox ekliyoruz.
Userformun Initialize kısmına aşağıdaki kodları yazıyoruz.

[vb:1:88854149a3]Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To Sheets.Count
ComboBox1.AddItem Sheets(i).Name
Next i
End Sub[/vb:1:88854149a3]

Daha sonra ComboBox1'e çift tıklatarak açılan kısma da şu kodları ilave edin.Yukarıdaki kodun aynısı.
[vb:1:88854149a3]Private Sub ComboBox1_Change()
On Error Resume Next
Sheets(ComboBox1.Text).Select
End Sub[/vb:1:88854149a3]

Yalnız burada her sayfayı seçtiğinizde eğer userformun kapanmasını istiyorsanız,kodun sonuna
[vb:1:88854149a3]Unload Me [/vb:1:88854149a3]
satırını ilave etmeniz gerek.
Vaktim vardı kısacık yazıverdim.. :hey:
 

Destiny

Altın Üye
Katılım
28 Kasım 2005
Mesajlar
68
Altın Üyelik Bitiş Tarihi
11-12-2025
Valla ufak çaplı bi eğitim semineri gibi olmuş ellerine saglık sıkıntı duydugum bi konuydu.Sağolun....
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
benden userformdaki combobox1 e a&#231;&#305;k &#231;al&#305;&#351;am kitaplar&#305;n&#305; combobox2 yede ona ba&#287;l&#305; &#231;al&#305;&#351;masayfalar&#305;n&#305; getiren makro ile katk&#305; sa&#287;layay&#305;m.

Kod:
Private Sub UserForm_Initialize()
    ComboBox1.Clear
    For Each wkb In Application.Workbooks
        ComboBox1.AddItem wkb.Name
    Next
    ComboBox1.ListIndex = 0
Set wkb = Nothing
End Sub
'
Private Sub ComboBox1_Change()
    ComboBox2.Clear
    For Each wsh In Workbooks(ComboBox1.Value).Sheets
        ComboBox2.AddItem wsh.Name
    Next
    ComboBox2.ListIndex = 0
Set wsh = Nothing
End Sub
 
Üst