Veri Doğrulama da Sayfa isimleri ve o sayfalara gitme

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
Arkadaşlar merhaba; ben dosyamdaki tüm sayfalarda X1 hücrelerine veri doğrulama ile sayfaların isimlerini listelemek ve hangi sayfa ismini seçtiysem o sayfaya gitmek istiyorum. Şimdiden teşekkürler.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde kendinize uyarlayınız.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets(Target.Text).Select
End Sub
226329
 

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
Hocam çok teşekkürler bir şey daha isteyeceğim eğer uygunsa yeni sayfa eklendi veya sayfa silindi bunları otomatik olarak veri doğrulamaya nasıl güncelleye bilirim?
 

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

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde deneyiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Set a = Sheets(Target.Text)
a.Select
If a Is Nothing Then
MsgBox "Bu İsimde Bir Sayfa Yok", vbCritical, "Bu İsimde Bir Sayfa Yok"
End If
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,333
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayfa isimlerini bir alanda listelemek için aşağıdaki kullanıcı tanımlı fonksiyonu (KTF) kullanabilirsiniz.

Kullanım şekli;

=SAYFA_İSİMLERİ(Kaçıncı_Sayfa;Hariç_Sayfalar)


C++:
Option Explicit

Function SAYFA_İSİMLERİ(Kaçıncı_Sayfa As Integer, Optional Hariç_Sayfalar As Variant)
    Dim Sayfa As Worksheet, Say As Integer, X As Integer
    
    Application.Volatile True
    
    ReDim Liste(1 To 1)
    
    For Each Sayfa In ThisWorkbook.Worksheets
        On Error Resume Next
        X = 0
        X = Application.Match(Sayfa.Name, Hariç_Sayfalar, 0)
        On Error GoTo 0
        If X = 0 Then
            Say = Say + 1
            ReDim Preserve Liste(1 To Say)
            Liste(Say) = Sayfa.Name
        End If
    Next
    
    SAYFA_İSİMLERİ = Liste(Kaçıncı_Sayfa)
End Function
Mesela 10 sayfalık bir dosyada Sayfa1 ve Sayfa2 isimli sayfalar hariç isimleri listelemek için aşağıdaki gibi formülü uygulayabilirsiniz.

=EĞERHATA(SAYFA_İSİMLERİ(SATIR(A1);{"Sayfa1";"Sayfa2"});"")

Bu formülü bir hücreye yazıp aşağıya doğru sürüklediğinizde hariç sayfalar dahil edilmeden sayfa isimlerini listeleyecektir. Yeni eklenebilecek sayfa sayısını düşünerek formülü alt hücrelere sürüklerseniz sorun çıkarmadan kullanabilirsiniz.
 
Üst