EXCELL SAYFALARIM ARASINDA GEÇİŞ YAPTIRMAK İSTİYORUM

Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Herkese kolay gelsin, excell de 100 yakın sayfam bulunmakta ben “ANA GİRİŞ” diye yeni sayfa ekleyip orda sayfalar arası geçiş yaptırmam lazım şöyle söylim bir hücre oluşturucam onun içine hangi sayfanın ismini yazarsam o yazdığım sayfaya gitmek istiyorum yardımcı olabilirmisiniz
 
Katılım
15 Aralık 2008
Mesajlar
202
Excel Vers. ve Dili
excel 2010
Sub ListSheets()
Dim ws As Worksheet
Dim x As Integer
Set ws = Worksheets("ANAGİRİŞ")
x = 1
Range("A:A").Clear
For Each ws In Worksheets
Cells(x, 1) = ws.Name
x = x + 1
Next ws
End Sub

dener misiniz?
 
Katılım
15 Aralık 2008
Mesajlar
202
Excel Vers. ve Dili
excel 2010
2 Nolu mesaj sayfaları listeler. bu kod Hyperlink atar.
Sub List_Sheets()
Dim Ws As Worksheet
Dim x As Integer
Worksheets("ANAGİRİŞ").Select
Range("A1").Select
For Each Ws In ActiveWorkbook.Worksheets
ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name
ActiveCell.Offset(1, 0).Select
Next Ws
End Sub
 
Katılım
6 Temmuz 2015
Mesajlar
925
Excel Vers. ve Dili
2003
Alternatif;

A1 hücresine yazdığınız sayfaya gider.

Sub sayfa()
Sheets("" & [A1] & "").Select
End Sub
 
Katılım
15 Aralık 2008
Mesajlar
202
Excel Vers. ve Dili
excel 2010
Herkese kolay gelsin, excell de 100 yakın sayfam bulunmakta ben “ANA GİRİŞ” diye yeni sayfa ekleyip orda sayfalar arası geçiş yaptırmam lazım şöyle söylim bir hücre oluşturucam onun içine hangi sayfanın ismini yazarsam o yazdığım sayfaya gitmek istiyorum yardımcı olabilirmisiniz
100 e yakın sayfayı aklınızda tutmayın diye, liste üzerinden tıklamayla gidersiniz diye düşündüm.
Bu arada 3 nolu mesajda Dim x As Integer satırını da silebilirsiniz. gereksiz değişken atamışım oraya
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Sub ListSheets()
Dim ws As Worksheet
Dim x As Integer
Set ws = Worksheets("ANAGİRİŞ")
x = 1
Range("A:A").Clear
For Each ws In Worksheets
Cells(x, 1) = ws.Name
x = x + 1
Next ws
End Sub

dener misiniz?
Denedim ama birtürlü beceremedim yapamadım. genel hatları ile projemin bir kısmını koydum buraya kodu yerleştirebilirmisiniz hem bende incelemiş olurum tam anlamıyla şimdiden teşekkürler
 

Ekli dosyalar

Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
AnaSayfanın kod modülüne aşağıdaki kodu yapıştırın.
A1 hücresine yazdığınız metin bir sayfa adı ise o sayfayı aktifleştirir.
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Address = "$A$2" Then
Sheets(Range("a1").Value).Activate
End If
End Sub
 

kinikemrah

Altın Üye
Katılım
24 Nisan 2011
Mesajlar
43
Excel Vers. ve Dili
EXCEL 2013 Türkçe
Altın Üyelik Bitiş Tarihi
5-11-2025
Dosyayı indirmek istemeyenler için ise kodlar
Vba da userform oluşturun. Bir combobox1 adında combobox ve CommandButton1 adında bir tuş koyun içine girin ve aşağıda komutları yazın.
daha sonra excel'e dönüp Sayfalar Adında Bir Sayfa Hazırlayın ve A sutununa Sayfalarınız adını sırayla yazın. sonra oluşturduğunuz Userformu çalıştırın.
Private Sub CommandButton1_Click()
On Error Resume Next
Sheets(ComboBox1.Value).Select
End Sub

Private Sub UserForm_Initialize()
Me.ComboBox1.SetFocus
"userform adını yazınız".ComboBox1.SetFocus
ComboBox1.RowSource = "'Sayfalar'!a2:a" & ['Sayfalar'!a1453].End(3).Row + 1 ' Sayfalar Adında Bir Sayfa Hazırlayın ve A sutununa Sayfalarınız adını sırayla yazın.
End Sub
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
AnaSayfanın kod modülüne aşağıdaki kodu yapıştırın.
A1 hücresine yazdığınız metin bir sayfa adı ise o sayfayı aktifleştirir.
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Address = "$A$2" Then
Sheets(Range("a1").Value).Activate
End If
End Sub
Teşekkür ederim bu kod işe yaradı ayrıca diğer cevap veren arkadaşlar çok sağolun, ama birşeyi bir türlü yapamadım şimdi a1 tanımlı kod sıkıntı yok ama a1 değiştiremiyorum başka hücre tanımladığımda çalışmıyor acaba onu nasıl düzelte bilirim şimdiden teşekkür eserim
 
Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
Herhangi bir hücrede bir sayfa adı yazıp, Enter tuşuna basarsanız, yazdığınız sayfa aktifleşir.
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
Sheets(Target.Offset(-1, 0).Value).Activate
End Sub
 

kinikemrah

Altın Üye
Katılım
24 Nisan 2011
Mesajlar
43
Excel Vers. ve Dili
EXCEL 2013 Türkçe
Altın Üyelik Bitiş Tarihi
5-11-2025
Benim Hazırladığımı beğenmediniz mi :)) daha Stabil. Özür dilerim benim anladığım kodlar olduğu için sanırım daha stabil.
 
Katılım
13 Ağustos 2023
Mesajlar
1
Excel Vers. ve Dili
2016
AnaSayfanın kod modülüne aşağıdaki kodu yapıştırın.
A1 hücresine yazdığınız metin bir sayfa adı ise o sayfayı aktifleştirir.
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Address = "$A$2" Then
Sheets(Range("a1").Value).Activate
End If
End Sub
hocam bunu bütün sayfaların a1 hücresinde yapmak istiyorum ama işin içinden çıkamadım
 
Üst