• DİKKAT

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

sayfa ismini makro ile değiştirme

Katılım
1 Ağustos 2013
Mesajlar
563
Excel Vers. ve Dili
Ofis 2016 TR 32 Bit
sayfa2 nin isminin şöyle değişmesini istiyorum ;özet sayfasında ki x5 hücre sinde yazılı olan verinin ,(soldan formulü de kullanılarak) ..soldan 12 karakteri sayfa2 nin yerine yazmasını istiyorum .desteğinizi bekliyorum saygılarımla
 

Ekli dosyalar

Merhaba.

.
Kod:
    Sheets("Sayfa2").Name = Mid(Sheets("özet").[X5].Value, 1, 12)
 
sayın ömer baran ilginize çok teşekkürler , tek bir sayfa için verdiğiniz kod oldu ama ben de bu şekilde 90 tane sayfa ve her sayfaya da 90 tane isim var .
 

Ekli dosyalar

Tekrar merhaba.
Yeni örnek belgeyyi şimdi gördüm bakacağım.
 
Mükerrer isimler ne olacak acaba?
Aynı isim bir'den fazla var çünkü.
 
doğru bunu düşünmemişim , her verinin önüne 1 2 3 4 5 ...diye veri adedince rakam verelim hem kaç sayfa olduğunu rakamlada bilmiş olurum
 
Aynı isim yoksa zaten sorun yok varsa aynı isimlerin sonuna kaçıncı isim ise sayısını ekler.
Kod:
[FONT="Arial Narrow"]Sub sayfaisimleri()
Sheets("özet").Activate
For brn = 1 To Worksheets.Count
If Sheets(brn).Name = "özet" Or Sheets("özet").Cells(brn + 4, "X") = "" Then GoTo 10
adet = WorksheetFunction.CountIf(Sheets("özet").Range(Cells(5, "X"), _
        Cells(brn + 4, "X")), Cells(brn + 4, "X"))
If adet > 1 Then ilave = adet
    Sheets(brn).Name = Mid(Sheets("özet").Cells(brn + 4, "X").Value, 1, 12) & ilave
10: Next
End Sub[/FONT]
 
ömer bey üzgünüm sonradan farkettim yazdığınız makrolar özet sayfasında ki x5 den başlayarak sayfa isimlerini belirlemesi gerekirken x6 dan itibaren belirliyor ,ayrıca bu ilave olacak ama benim işimi formülle yapmaktan kurtaracak
şöyleki özet sayfasındaki x5 deki veriyi sayfa ismi yapıyoruz ya aynı sayfanın o1 hücresi de aynı isim olmalı örnek dosya yı ilave ettim .
sabırsızlıkla cevap bekliyorum saygılar..
 

Ekli dosyalar

Merhaba.

Mevcut kod'u aşağıdaki ile değiştirin.
.
Kod:
[FONT="Arial Narrow"]Sub sayfaisimleri()
For brn = 1 To Worksheets.Count
Sheets("özet").Activate
20: If brn > [X65536].End(3).Row - 3 Then Exit Sub
If Sheets(brn).Name = "özet" Or Sheets("özet").Cells(brn + 3, "X") = "" Then
    brn = 2: GoTo 20
End If
adet = WorksheetFunction.CountIf(Sheets("özet").Range(Cells(5, "X"), _
        Cells(brn + 4, "X")), Cells(brn + 3, "X"))
If adet > 1 Then
    ilave = adet
Else
    ilave = ""
End If
    Sheets(brn).Activate
[COLOR="Red"]    Sheets(brn).Unprotect "[B]123[/B]"[/COLOR] [COLOR="Blue"]'sayfa korumayı kaldır[/COLOR]
    Sheets(brn).Name = Mid(Sheets("özet").Cells(brn + 3, "X").Value, 1, 12) & ilave
    ActiveSheet.Cells(1, "O") = ActiveSheet.Name
[COLOR="Red"]    Sheets(brn).Protect "[B]123[/B]"[/COLOR] [COLOR="Blue"]'korumayı ekle[/COLOR]
10: Next
End Sub[/FONT]
 
Son düzenleme:
merhaba ömer bey , tam istediğim gibi oldu derken şöyle bir proplemle karşılaştım.
Benim kitabımdaki sayfalar korumalı (formülleri korumak için oluşturmuştum ) , dolayısıyle verdiğiniz makroyu , sayfalar korumasız olunca çok güzel çalışıyor fakat korumalı olunca makro çalışmıyor , bu proje içinde oldukça emek harcamıştım acaba bir çıkış yolu varmıdır
 
Tekrar merhaba.

Üstteki kod'u güncelledim, kendi sayfa koruma şifrenizi kod'da 123 yerine yazarsanız sorun olmaması gerekir.
.
 
memnuniyetimi ifade edecek kelime bulamıyorum ,Allah sizden razı olsun.
 
Geri
Üst