Hücreye bağlı sayfa ekleme ve hücrede yazılı sayfaya gitme

Katılım
12 Mart 2005
Mesajlar
31
Makroyu çalıştırdığım zaman a1 hücresinde yazılı olan değerle aynı isimde yeni bir sayfa eklenmesini istiyorum bunu nasıl yapabilirim. Birde gene aynı şekilde sayfa1'deki a1 hücresinde yazılı olan değerle aynı isimli sayfayı seçmek istiyorum ancak makroyu her zaman sayfa 1den çalıştırmayabilirim yani sayfa2 den çalıştırsam bile sayfa1 a1 de yazılı olan sayfayı seçmek istiyorum. Eğer safya1 a1 deki yazılı olan değerle aynı isimli sayfa mevcut değilse uyarı yazısı çıksın. Yardımcı olabilirseniz çok sevinirim. Teşekkürler
 

mehmett

Altın Üye
Katılım
18 Mayıs 2005
Mesajlar
2,571
Excel Vers. ve Dili
Excel 2010 Türkçe
Aşağıdaki kodları deneyin;

Sub sayfaekle()
Sheets.Add After:=Sheets("Sayfa1")
ActiveSheet.Name = Sheets("Sayfa1").Range("A1").Value
End Sub

Sub sayfasec()
sayfa = Sheets("Sayfa1").Range("A1").Value
Sheets(sayfa).Select
End Sub
 
Katılım
12 Mart 2005
Mesajlar
31
Sayın mehmett kodlar için teşekkürler. ancak sayfasec makrosunu çalıştıramadım. a1 hücresindeki değer tarih olduğu için bir problem olabilir mi? birde eğer öyle bir sayfa yoksa hata mesajı çıkmasını istiyorum
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,729
Excel Vers. ve Dili
Excel 2019 Türkçe
Birde aşağıdaki şekilde deneyin.
Sub SAYFA()
For t = 1 To Sheets.Count
If Sayfa1.[a1] = Sheets(t).Name Then
MsgBox "bu isimde bir sayfa var"
Sheets(t).Select
End
End If
Next
cevap = MsgBox("bu isimde bir sayfa yok,açılsın mı?", vbYesNo)
If cevap = vbYes Then Sheets.Add: ActiveSheet.Name = Sayfa1.[a1]

End Sub
 
Katılım
12 Mart 2005
Mesajlar
31
sayın mehmett gönderdiği kodlar çalışıyor ve tam istediğim gibiler ancak a1 hücresindeki veri tarih olunda sayfa seçme makrosu çalışmıyor bu konuda bilgi verebilecek arkadaş yok mu?
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,729
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki gibi olur mu?

Sub sayfaekle()
Sheets.Add After:=Sheets("Sayfa1")
ActiveSheet.Name = Format(Sheets("Sayfa1").Range("A1").Value, "dd.mm.yy")
End Sub
 
Katılım
12 Mart 2005
Mesajlar
31
sayın hamitcan ilgilinize çok teşekkür ederim ancak. sayfa ekleme ile alakalı bir problemim yok. ancak eklenen sayfanın ismi tarih olunca sayfa seçme konusunda problem çıkıyor
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Sn.Black ICE

a1 hucresi tarih ise hucrenin basına " ' " ilave ediniz.

Ve Sn.Mehmet'in kodu gayet iyi çalışyor.

Alternatif kod.

Sub sayfasec()
sayfa = Sheets("Sayfa1").Range("A1").Value
For x = 1 To Sheets.Count
If Sheets(x).Name = sayfa Then
Sheets(sayfa).Select
End If
Next
End Sub
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,729
Excel Vers. ve Dili
Excel 2019 Türkçe
Sayfayı aşağıdaki formatta açarsanız seçebilirsiniz
Sub sayfasec()
If IsDate(Sheets("Sayfa1").Range("A1").Value) Then
sayfa = Format(Sheets("Sayfa1").Range("A1").Value, "dd.mm.yyyy")
Sheets(sayfa).Select
Else
sayfa = Sheets("Sayfa1").Range("A1").Value
Sheets(sayfa).Select
End If
End Sub
 
Üst