Hareketli Bayramlari hesaplatmak

Katılım
3 Nisan 2006
Mesajlar
118
Excel Vers. ve Dili
Vers. 2013 Almanca
Merhaba Arkadaslar,

Asagidaki dosyada EGER Formülü ile Almanya'nin hareketli tatilgünlerini bulunabiliyor. Bu Formülü VBA ile yazmaya calistim ama tamamlayamadim. Ben VBA ile sonuca ulasamadigim icin yardimlariniza ihtiyacim var.

Formül su sekilde calisiyor. B1 daki (2007) yilini artirip veya eksiltmekle, hareketli bayramlar bulunuyor.
Hesap isini ise; Osternsonntag (B7) deki tarihe göre ayarliyor.

Sayfa1 de yesilrenkteki sabit bayramlari VBA ile yazdirabildim.

Arkadaslar birde sabit bayramlara hep 1905 yaziyor. Buda biryerlerden ayarlanilabiliyordur ama nereden? 01.01.2007 yazmasi gerekirken 01.01.1905 yaziyor.
Sorumla bir ilgilenirseniz memnun olurum.

Saygilarimla
kaleci
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,060
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Kod:
tatilgünleri = Year(Worksheets("Tabelle1").Range("B1"))
Yukarıdaki satırı aşağıdaki ile değiştirin.

Kod:
tatilgünleri = Worksheets("Tabelle1").Range("B1")
 
Katılım
3 Nisan 2006
Mesajlar
118
Excel Vers. ve Dili
Vers. 2013 Almanca
Sayin leventm Hocam,

Verdiginiz degisiklikle problemin önemli kismini cözdük. Tarihler artik 1905 olarak degilde 2007 olarak görünüyor. Bu sekilde bile Projem yardimlarinnizla tamamlanmis oluyor. Ilgilendiginiz icin tesekkür ederim.
Hocam birde EGER formülünü VBA ile yazdirabilsek cok güzel olacak. O zaman herseyi VBA ile yapmis olacagiz. Asagidaki formül Sayfada Range("B7") dedir. Hersey bu hücreye göre ayarlidir. Eger B7 hücresinin icerisindeki "EGER" formülü icin bir VBA döngüsü üretebilsek bu is olacak. Hocam bir ilgilenirseniz cok memnun olurum.

Osternsonntag 08.04.2007 =DM((TAG(MINUTE(B1/38)/2+55)&".4."&B1)/7;)*7-WENN(JAHR(1)=1904;5;6)

Rosenmontag 19.02.2007 = B7-48,
Fastnacht 20.02.2007 = B7-47
Aschermittwoch 21.02.2007 = B7-46
.................. diye devam ediyor.

Saygilarimla
kaleci
 
Üst