Dizi formülü ile başlangıç ve bitiş tarihler verilen iki tarih aralığının kesişim kümesinin eleman sayısını bulmak

Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
Sitede tarihlerin hücrelere yazılmış, tarih aralıklarına ait örnek buldum ama sadece başlangıç ve bitiş tarihleri verilmiş duruma bir türlü uyarlayamadım.
Örnek Durum:
İlk aralık
A1 Hücresine 01.01.2020
B1 Hücresine 10.01.2020
İkinci Aralık
C1 Hücresine 05.01.2020
D1 Hücresine 15.01.2020
 

İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,104
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

Doğru anladıysam:

Basit formül:

Kod:
=ROWS(INDIRECT("A"&A1&":A"&B1) INDIRECT("A"&C1&":A"&D1))
Devasa Formül:

Kod:
=NOT(OR(MIN(A1:B1)>MAX(C1:D1); MAX(A1:B1)<MIN(C1:D1)))*(((OR(AND((MIN(A1:B1)<=MIN(C1:D1));MAX(A1:B1)>=MAX(C1:D1));AND((MIN(A1:B1)>=MIN(C1:D1));MAX(A1:B1)<=MAX(C1:D1)))*(MIN(B1-A1;D1-C1)+1)*NOT(OR(MIN(A1:B1)>MAX(C1:D1); MAX(A1:B1)<MIN(C1:D1))))=0)*(MIN(MAX(A1:B1)-MIN(C1:D1);MAX(C1:D1)-MIN(A1:B1))+1)+OR(AND((MIN(A1:B1)<=MIN(C1:D1));MAX(A1:B1)>=MAX(C1:D1));AND((MIN(A1:B1)>=MIN(C1:D1));MAX(A1:B1)<=MAX(C1:D1)))*(MIN(B1-A1;D1-C1)+1))
Sizin örneğe göre sonuç: 6

.
 
Katılım
12 Aralık 2015
Mesajlar
1,200
Excel Vers. ve Dili
Türkçe Ofis 2007
Sağ olun İdris bey
Aşağıdaki KTF ile yapmıştım ama formül gerekti, nedense formüller bana karışık geliyor.
Kod:
Function dene(Bas, Bit, FBas, FBit) As Integer
Dim say As Integer
say = 0
For e = FBas To FBit
For i = Bas To Bit
If i = e Then
say = say +1
End If
Next
Next
dene =  say
End Function
 
Moderatör tarafında düzenlendi:
Üst