• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Sayfa yoksa

Katılım
21 Kasım 2004
Mesajlar
87
merhaba,

Sheets("KAYIT").Range("D2").Value hücresine yazdığım isimde sayfanın mevcutluğunu nasıl sorgularım. Ve de sayfa yok ise D2 hücresine yazdığım isimle sayfa oluşturabilirim.
 
Bu işinizi görürmü.

[vb:1:1f70e076b0]Sub Makro1()
adi = [D2]
buldumu = 0
For i = 1 To Sheets.Count
If Sheets(i).Name = adi Then
MsgBox "Burada ne yapmak istiyorsanız"
buldumu = 1
Exit For
End If
Next i
If buldumu = 0 Then
Worksheets.Add
ActiveSheet.Name = adi
End If
End Sub[/vb:1:1f70e076b0]
 
Alternatif:

[vb:1:c6bbd5e972]Sub Test()
Dim Sh As String
Sh = Sheets("KAYIT").Range("D2")
If Not SheetExist(Sh) Then
Set NewSh = Sheets.Add(After:=Sheets(Sheets.Count))
NewSh.Name = Sh
End If
Set NewSh = Nothing
End Sub
'
Function SheetExist(ShName As String) As Boolean
On Error Resume Next
SheetExist = IIf(Sheets(ShName).Select, True, False)
End Function
[/vb:1:c6bbd5e972]
 
Ben de sayfayı en sağda olacak şekilde nasıl oluşturabiliriz diyecekken, Raider'in alternatifi de işimi gördü. Cevaplarınız teşekkürler.
 
Bir alternatifte benden. Burada hata fonksiyonundan istifade edilmiştir.

[vb:1:fb498960f6]Sub sayfabul()
On Error GoTo 10
Sheets(Sheets("KAYIT").[d2].Value).Select
Exit Sub
10 Sheets.Add After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = Sheets("KAYIT").[d2].Value
End Sub
[/vb:1:fb498960f6]
 
Bu konuda alternatiflerin çok olması soruyu soran için büyük avantaj ve yeni açılımlar yaratmaktadır. (bir senedir tayinim sebebiyle excel ile ilgilenemedim, bazı konuları hakikaten unutmuşum) sayın leventm ile aynı anda mesaj göndermişiz. Hepinize teşekkür ediyorum.
 
Geri
Üst