Ayın son işgününü bulma.

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Yılın aylarını A2' den aşağı doğru yazalım ve karşılarına o ayın son iş gününü hesaplayalım.
Yardımlarınız için teşekkür ederim.
sward175
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,246
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
=ARA(2;1/(HAFTANINGÜNÜ(SATIR(DOLAYLI(A2&":"&SERİAY(A2;0)));2)<6);SATIR(DOLAYLI(A2&":"&SERİAY(A2;0))))
 

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Sayın, Korhan Ayhan,
Teşekkür ederim,
İsteğim Cumartesi, Pazar, Ulusal tatil ve Dini tatil günlerini de hesaplaması.
Bu şeklide formül yazabilir miyiz ?
Saygılarımla,
sward175
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Alternatif:

=EĞER(HAFTANINGÜNÜ(SERİAY(A2;0);2)>5;SERİAY(A2;0)-ARA(HAFTANINGÜNÜ(SERİAY(A2;0);2);{6;7};{1;2});SERİAY(A2;0))
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,246
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu durumda ilgili yıllara ait tatil günlerini bir yerde yazmanız gerekiyor.
 

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Sayın, Korhan Ayhan,
Ekli dosyaya tatil sayfası ekledim.
Yardımcı olabilirseniz sevinirim.
saygılarımla,
sward175
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,246
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Tatiller isimli sayfanın A2:A550 hücre aralığını Tatiller olarak adlandırdım.

C++:
=ARA(2;1/((HAFTANINGÜNÜ(SATIR(DOLAYLI(A2&":"&SERİAY(A2;0)));2)<6)*EHATALIYSA(KAÇINCI(SATIR(DOLAYLI(A2&":"&SERİAY(A2;0)));Tatiller;0)));SATIR(DOLAYLI(A2&":"&SERİAY(A2;0))))
 

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Korhan Bey,
Çok teşekkür ederim,
Sağlıklı ve huzurlu nice güzel günler dilerim.
sward175
 
Katılım
21 Aralık 2016
Mesajlar
722
Excel Vers. ve Dili
Office 365 TR
Selamlar,
Dosyanızı göremem.. Sorunuzdan ve cevap olarak yazılan formüllerden hareketle

İŞGÜNÜ.ULUSL işlevi ile alternatif çözüm olarak

=İŞGÜNÜ.ULUSL(SERİAY(A2;0)+1;-1;1;Tatiller!$A$2:$A$550)

Not : 1 : hafta tatili olarak Cumartesi ve Pazar günlerini belirtmektedir.

Konuya dair bir örnek hazırlamıştım... İncelersiniz...

 

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Sayın, 52779
Teşekkür ediyorum,
Sağlıklı, huzurlu nice güzel günlere.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Alternatif olarak makrolu çözüm için aşağıdaki makroyu deneyebilirsiniz:

PHP:
Sub tatil()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Tatiller")
son = s1.Cells(Rows.Count, "A").End(3).Row
sonT = s2.Cells(Rows.Count, "A").End(3).Row
s1.Range("B2:B" & son).ClearContents
For ay = 2 To son
    For tarih = WorksheetFunction.EoMonth(s1.Cells(ay, "A"), 0) To s1.Cells(ay, "A") Step -1
        If Weekday(tarih, 2) > 5 Then
            GoTo 20
        ElseIf WorksheetFunction.CountIf(s2.Range("A1:A" & sonT), tarih) = 0 Then
            s1.Cells(ay, "B") = tarih
            GoTo 10
        ElseIf WorksheetFunction.VLookup(tarih * 1, s2.Range("A1:D" & sonT), 3, 0) = "1/2 GÜN" Then
            s1.Cells(ay, "B") = tarih
            GoTo 10
        End If
20:
    Next
10:
Next
End Sub
 

sward175

Özel Üye
Katılım
4 Şubat 2011
Mesajlar
1,112
Excel Vers. ve Dili
Excel Vers. ve Dili:
Microsoft Office 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
04-06-2024
Sayın, YUSUF44,
Çok teşekkür ederim.
Sağlıklı, huzurlu nice güzel günleriniz olsun.
sward175
 
Üst