• DİKKAT

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

yeni sayfa açmak ve sayfa adını hücreden almak

Katılım
26 Ağustos 2016
Mesajlar
2
Excel Vers. ve Dili
exel 2010 türkçe
evet arakdaşlar başlıktaki gibi exel 2010 da 200 e yakın sayfa açıp her sayfanın adını değiştirmem lazım sayfa adı listeli bi şekilde (a1,a2 ,a3...) calişma sayfası1 de duruyor bunun için herhangi bi makro yazılabilirmi yani hem yeni sayfa açıp hemde sayfa adını calışma sayfası1 den alabilecek bir makro üstadlarım yardımcı olursa sevinirim.
 
. . .

Kod:
Sub kod()

    Dim S1 As Worksheet: Set S1 = Sheets("Sayfa1")

    For i = 1 To 200
        Sheets.Add After:=ActiveSheet
        ActiveSheet.Name = S1.Cells(i, "A")
    Next i

End Sub

. . .
 
öncelikle teşşekürler hocam ama hata alıyorum birkaç safydan sonra hata kodu 400 nedendir acaba
 
. . .

Hata aldığınız örneği yüklerseniz inceleyelim.

. . .
 
Merhaba.

Sayın ÇOBAN'ın müsadeleriyle.
Sayın ÇOBAN'ın kodlarına birkaç küçük dokunuş ekledim.

-- A sütununda 1'inci satırdan son dolu hücreye kadar işlem yapılır.
-- A sütununda son dolu satırdan önceki boş hücreler atlanır.
-- A sütununda aynı değeri taşıyan bir'den fazla hücre varsa, sayfa adının sonuna ..2,..3 gibi ad verilir.
.
Kod:
[FONT="Arial Narrow"]Sub kod()
    Dim S1 As Worksheet: Set S1 = Sheets("Sayfa1")
    For i = 1 To [COLOR="Blue"]S1.[A65536].End(3).Row[/COLOR]
   [COLOR="SeaGreen"] If S1.Cells(i, 1) = "" Then GoTo 10[/COLOR]
    [COLOR="red"]    If WorksheetFunction.CountIf([B]S1.[/B]Range("A1:A" & i), [B]S1.[/B]Cells(i, 1)) > 1 Then _
            [B]ek = " " & WorksheetFunction.CountIf(S1.Range("A1:A" & i), S1.Cells(i, 1))[/B][/COLOR]
        Sheets.Add After:=ActiveSheet
        ActiveSheet.Name = S1.Cells(i, "A") [COLOR="red"]& ek[/COLOR]
10:    Next i
End Sub[/FONT]
 
Son düzenleme:
Merhaba.

Sayın ÇOBAN'ın müsadeleriyle.
Sayın ÇOBAN'ın kodlarına birkaç küçük dokunuş ekledim.

-- A sütununda 1'inci satırdan son dolu hücreye kadar işlem yapılır.
-- A sütununda son dolu satırdan önceki boş hücreler atlanır.
-- A sütununda aynı değeri taşıyan bir'den fazla hücre varsa, sayfa adının sonuna ..2,..3 gibi ad verilir.
.
Kod:
[FONT="Arial Narrow"]Sub kod()
    Dim S1 As Worksheet: Set S1 = Sheets("Sayfa1")
    For i = 1 To [COLOR="Blue"]S1.[A65536].End(3).Row[/COLOR]
   [COLOR="SeaGreen"] If S1.Cells(i, 1) = "" Then GoTo 10[/COLOR]
    [COLOR="red"]If WorksheetFunction.CountIf(Range("A1:A" & i), Cells(i, 1)) > 1 Then ek = " " & adet[/COLOR]
        Sheets.Add After:=ActiveSheet
        ActiveSheet.Name = S1.Cells(i, "A") [COLOR="red"]& ek[/COLOR]
10:    Next i
End Sub[/FONT]
. . .

Merhaba Sy Ömer BARAN,
Kodlar bu hali ile hatalı çalışacaktır ve hata verecektir.
* Adet değişkeni tanımlanmamış.
* CountIf için S1 tanımlanması eklenmeli.

Sayfa var mı kontrolü en sağlıklısı...

. . .
 
Evet haklısınız, kodu kısaltayım derken fazla silmişim demekki.
Önceki cevabımda düzeltme yaptım.
 
Geri
Üst