Çalışma kitabında sayfa ismi arama

Katılım
29 Ocak 2016
Mesajlar
15
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
24/05/2022
Arkadaşlar merhaba, Bu konu daha önce açılmış olabilir, forumlarda arama yaptırdım ama istediğim formatta bir çözüm bulamadım.

Çalışma kitabında yüzlerce sayfası olan bir dosya var elimde. Bu kadar çok sayfa içerisinde çalışacağım sayfayı bulmak işkence resmen. Ben istiyorum ki ilk sayfa arama da yapabileceğim rehber şeklinde tüm sayfa isimlerin olduğu liste ya da arama butonu olabilir mi. Bu arama sayfasına ya da listeye yeni eklediğim sayfalar da otomatik olarak eklensin istiyorum. Böyle bir çalışma nasıl yapılabilir. Yardımlarınız için şimdiden teşekkür ederim.
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Önce Modul içindeki kodu çalıştırın, mevcuttaki sayfa isimlerini -Sayfa1 sayfasında oluşturmak için- Diğer kod ise her yeni sayfa açıldığında listenin sonuna syeni sayfa ismini ekleyecektir.
Bir Module içine;
Kod:
Sub TumSayfalar()
    For Each Sht In Sheets
        i = i + 1
        Sheets("Sayfa1").Cells(i, 1) = Sht.Name
    Next
End Sub
Dosyanın ThisWorkBook kısmına;
Kod:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
    Set S1 = Sheets("Sayfa1")
    x = S1.[a65536].End(3).Row + 1
    S1.Cells(x, 1) = Sh.Name
    S1.Select
End Sub
 
Katılım
29 Ocak 2016
Mesajlar
15
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
24/05/2022
elinize sağlık. Tüm sayfaların isimleri liste halinde geldi. Listede yazan sayfa ismine tıkladığım zaman o sayfaya nasıl gidebilirim. Bir de yeni sayfa eklediğimde listeye gelmesi için her seferinde kodu görüntüle yapıp makroyu çalıştır mı demem lazım. Başka ne şekilde çalıştırabilirim.
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
572
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Sub Test()
With Sheets(1)
For i = 1 To Sheets.Count
Cells(i, 1) = Sheets(i).Name
.Hyperlinks.Add Anchor:=Cells(i, 1), _
Address:="", SubAddress:=Sheets(i).Name & "!A1"
Sheets(i).Range("A1") = Sheets(1).Name
Sheets(i).Hyperlinks.Add Anchor:=Sheets(i).Range("A1"), _
Address:="", SubAddress:=Sheets(1).Name & "!A1"
Next
End With
End Sub


----- ALT + F11 tuşlarına birlikte bas, VBE penceresi ekrana gelsin.
----- Bu pencerede Insert >> Module menusunu tıkla (Ekle >> Modül)
----- Ekranın sağ tarafındaki büyük pencereye, yukarıdaki kodu kopyalayıp, yapıştır.
----- F5 tuşuna basarak sözkonusu Test isimli prosedurun çalıştırılmasını sağla.

Bu kod için Haluk beye teşekkürler
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Alternatif olarak ekteki dosyayı inceleyiniz.
Ana Sayfa adlı sayfada B1 hücresini seçin açılır kutudan sayfa ismi seçin sayfa aktif olsun.
Yeni sayfa eklediğinizde/sildiğinizde otomatik ekler/siler
Sayfaları alfabetik sıralar.
 

Ekli dosyalar

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Bir de yeni sayfa eklediğimde listeye gelmesi için her seferinde kodu görüntüle yapıp makroyu çalıştır mı demem lazım. Başka ne şekilde çalıştırabilirim.
Yeni bir sayfa oluşturduğunuzda sayfa ismini otomatik olarak liste sonuna ekler, kodu belirttiğim yere eklemeniz kaydıyla...
 

yanginci34

Altın Üye
Katılım
6 Temmuz 2010
Mesajlar
1,628
Excel Vers. ve Dili
excel2016
Altın Üyelik Bitiş Tarihi
12-10-2026
Alternatif olarak ekteki dosyayı inceleyiniz.
Ana Sayfa adlı sayfada B1 hücresini seçin açılır kutudan sayfa ismi seçin sayfa aktif olsun.
Yeni sayfa eklediğinizde/sildiğinizde otomatik ekler/siler
Sayfaları alfabetik sıralar.
Hocam foruma üyeliğim yeni bitti lütfen bu dosyayı başka bir şekilde paylaşabilirmisiniz?
 
Üst