• DİKKAT

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

Yıl isimli aktif sayfanın ismini alarak tarih yapma

Katılım
15 Temmuz 2012
Mesajlar
2,802
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Merhaba, hayırlı günler.

Ekte gönderdiğim excel dosyamın sayfaları yıl isimleridir.
Yapmak istediğim aktif bulunduğum yıl sayfasının ismini ARŞİV sayfasının M1 hücresine almak istiyorum.
Örneğin M1 hücresinin 26.12.2020 gibi yazmasını istiyorum.
Yardımcı olur musunuz?
 

Ekli dosyalar

Merhaba,
İstediğiniz bu mu?
Kod:
=EĞERHATA(TARİH(PARÇAAL(HÜCRE("DOSYAADI";A1);MBUL("]";HÜCRE("DOSYAADI";A1))+ 1;255);AY(BUGÜN());GÜN(BUGÜN()));"")
 
Sayın Ömer ilginiz için çok teşekkür ediyorum, sizin formülü uygulamaya çalıştım ama bir türlü yapamadım.
Sizin formülü makro kaydet yöntemi ile vba tarafına aldım, aşağıdaki gibi makroyu çalıştırıyorum, hücre içerisi boş geliyor.
Aşağıdaki kod, yıl sayfalarının kod bölümünde yer alıyor.

Kod:
Private Sub Worksheet_Activate()
With Sheets("ARŞİV").Range("M1")
.Formula = "=IFERROR(DATE(MID(CELL(""DOSYAADI"",RC[-12]),SEARCH(""]"",CELL(""DOSYAADI"",RC[-12]))+ 1,255),""12"",""25""),"""")"
.Value = .Value
End With
End Sub
 
Formülle istiyorsunuz diye anlamıştım.

BuÇalışmakitabı kod bölümüne kopyalayın.
Kod:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    On Error GoTo atla
    [M1] = DateSerial(ActiveSheet.Name, Month(Date), Day(Date))
    Exit Sub
atla:
    [M1] = "Tarih Yok"
End Sub
 
Sayın Ömer Bey, ellerinize sağlık kod gayet güzel çalıyor.
Yazmış olduğunuz kod hangi sayfada aktif isem, o sayfanın M1 hücresine tarih yazıyor.

Benim istediğim örneğin,
2019 yılı sayfasında iken, bu tarihi yani 25.12.2019 tarihini ARŞİV sayfasının M1 hücresine yazmasını istiyorum.
2020 yılı sayfasında iken, bu tarihi yani 25.12.2020 tarihini ARŞİV sayfasının M1 hücresine yazmasını istiyorum.
 
Bu şekilde deneyin.
Aktiv sayfa ARŞİV sayfası ise bir şey yaptırmadım.
Kod:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    On Error GoTo atla
    If ActiveSheet.Name = "ARŞİV" Then Exit Sub
    Sheets("ARŞİV").Range("M1") = DateSerial(ActiveSheet.Name, Month(Date), Day(Date))
    Exit Sub
atla:
    Sheets("ARŞİV").Range("M1") = ""
End Sub
 
Sayın Ömer Bey, ellerinize sağlık şimdi oldu, çok teşekkür ederim.
Hayırlı günler diliyorum.
 
Sayın İdris Bey, hangi sayfada aktif isem o sayfanın ismini Arşiv sayfasında yazmasını istemiştim.
Sayın Ömer Bey, konuyu çözdü.
 
Geri
Üst