makro ile yılı otomatik nasıl değiştirebilirim ?

Katılım
19 Mayıs 2022
Mesajlar
69
Excel Vers. ve Dili
vba
merhabalar tarihlerim ;

25.05.2022

Etik Günü

29.05.2022

İstanbul’un Fethi

6.06.2022

Çevre Koruma Haftası (6-1)

20.06.2022

Babalar Günü

12.09.2022

İlköğretim Haftası (12-16)

10.09.2022

Öğrenciler Günü

19.09.2021

Gaziler Günü

13.09.2021

15Temmuz Demok. ve Millî Bir. Günü (13-18)

28.09.2021

Dünya Okul Sütü Günü

4.10.2021

Hayvanları Koruma Günü

8.10.2021

Ahilik Kültürü Haftası (8-12)

13.10.2021

Dünya Afet Azaltma Günü

24.10.2021

Birleşmiş Milletler Günü

29.10.2021

Cumhuriyet Bayramı

29.10.2021

Kızılay Haftası (29 Ekim / 4 Kasım)




bu şekilde listeli belirli günlerim var fakat 2021 tarihi ellen tek tek girmek can sıkıcı hangi yıldaysak oraya eklenen tarihlerinde yıllarını o yılı otomatik yapacak bir makro yazılabilir mi ? 2023 olduğunda 2022 ler 2023 yılına dönsünler.
replace yöntemi kullandım işe yaramadı :(((
yardım edecek arkadaşa(lara) şimdiden tşk ederim.
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Sadece yılda 1 kez yapılacak bir şey ise Ctrl + H yapıp
Aranan değere "2022"
Yeni değere "2023" yazıp tümünü değiştir dediğinizde hepsi değişecektir.
 
Katılım
19 Mayıs 2022
Mesajlar
69
Excel Vers. ve Dili
vba
ilgili alanı seçip dediğinizi yaptım fakat ilgili alan için değiştirecek hiçbir şey bulamadık yada korumalı diyor. Tarihlerin olduğu alan tarih verisi olduğu için olmasın yani düz metin gibi algılamıyor.
 
Katılım
19 Mayıs 2022
Mesajlar
69
Excel Vers. ve Dili
vba
Sub replace()

Range("K5:K65").replace What:="2021", Replacement:="2022", LookAt:=xlWhole

End Sub

böyle bir kod dahi bulup kullandım ama çalışmadı. :(((
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
ilgili alanı seçip dediğinizi yaptım fakat ilgili alan için değiştirecek hiçbir şey bulamadık yada korumalı diyor. Tarihlerin olduğu alan tarih verisi olduğu için olmasın yani düz metin gibi algılamıyor.
Sadece tek bir hücre seçili iken yaptığınızdan emin olun. Tarihte olsa değişiklik yapması lazım
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Kod:
Sub degistir()

aranan = InputBox("Değiştirmek istediğiniz değeri giriniz.")
Yeni = InputBox("Yeni değeri giriniz.")
   
    Cells.Select
    Selection.Replace What:=aranan, Replacement:=Yeni, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
    Range("A2").Select
   
    MsgBox aranan & " tarihi " & Yeni & " ile değiştirilmiştir.", vbInformation
End Sub
Bunu kodları deneyin isterseniz, makro kaydetme yönteminden yardım alarak yaptım.
Kodu çalıştırdığınızda ilk açılan ekrana "Değiştirmek" istediğiniz değeri giriniz.
İkinci açılan ekrana "Yeni Değeri" giriniz.
Ben denedim çalışıyor.
 
Katılım
19 Mayıs 2022
Mesajlar
69
Excel Vers. ve Dili
vba
Kod:
Sub degistir()

aranan = InputBox("Değiştirmek istediğiniz değeri giriniz.")
Yeni = InputBox("Yeni değeri giriniz.")
  
    Cells.Select
    Selection.Replace What:=aranan, Replacement:=Yeni, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
    Range("A2").Select
  
    MsgBox aranan & " tarihi " & Yeni & " ile değiştirilmiştir.", vbInformation
End Sub
Bunu kodları deneyin isterseniz, makro kaydetme yönteminden yardım alarak yaptım.
Kodu çalıştırdığınızda ilk açılan ekrana "Değiştirmek" istediğiniz değeri giriniz.
İkinci açılan ekrana "Yeni Değeri" giriniz.
Ben denedim çalışıyor.
çok güzel çalıştı elinize sağlık manuel olarak çalışmıyordu. Bende anlamadım çok sağolun biraz sipesifik yaparsak misal B5, K5 ve N5 sutunundaki tarihleri değiştirebilir miyiz ? bu sutunlardan aşağıya doğru tarihler listeniyor.
 
Katılım
19 Mayıs 2022
Mesajlar
69
Excel Vers. ve Dili
vba
Range("K5:K65").replace What:=aranan, Replacement:=Yeni, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2

böyle yapınca oldu diğerlerine aynısını uygularsam tamamdır.
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Bir nebze yardımım olabildiysem ne mutlu, hayırlı geceler.
 
Son düzenleme:
Üst