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

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
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

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
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()));"")
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
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
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
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
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
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.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
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
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
Sayın Ömer Bey, ellerinize sağlık şimdi oldu, çok teşekkür ederim.
Hayırlı günler diliyorum.
 

ASLAN7410

Altın Üye
Altın Üye
Katılım
15 Temmuz 2012
Mesajlar
2,800
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
29.03.2025
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ü.
 
Üst