AVERAGEIFS fonksiyonunda Hata

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,058
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,

Aşağıdaki Kodda
a2 = WF.AverageIfs(SumRng, Rng, str, Rng6, ">=" & minDate, Rng6, "<=" & makDate)

satırında hata alıyorum, nasıl çözüm önerirsiniz?

ilgi ve alakanız için şimdiden teşekkürler..

Kod:
Sub Hesapla()
Dim sh1 As Worksheet
Dim sh4 As Worksheet
Dim WF As WorksheetFunction
Dim Tarih As Date
Dim a1 As Double, a2 As Double
Dim minDate As Date, makDate As Date
Dim Urun As String

Dim str As String

Dim Rng2 As Range, SumRng As Range
Dim Rng6 As Range, MyRng As Range

Dim Sat As Byte, SonSat As Byte
Dim Son As Long, s As Byte, j As Byte

    
 Set WF = Application.WorksheetFunction

Set sh1 = Sheets("Sayfa2")
Set sh4 = Sheets("Data")
Son = sh4.Cells(sh4.Rows.Count, "A").End(xlUp).Row

Set MyRng = sh1.Range("C$1:AG$1")

minDate = WF.Min(MyRng)
makDate = WF.Max(MyRng)

sh1.Range("C2:AK1000").ClearContents

Set Rng = sh4.Range("B$2:B" & Son)

Set Rng6 = sh4.Range("C$2:C" & Son)
Set SumRng = sh4.Range("D$2:D" & Son)

SonSat = sh1.Cells(sh1.Rows.Count, "A").End(xlUp).Row

For s = 2 To SonSat
    
    str = sh1.Range("A" & s)
    
    
    If str = "" Then GoTo 20

        For j = 1 To 31
        Sut = j + 2
        
            If sh1.Cells(1, Sut) = "" Then GoTo 10
        
                Tarih = sh1.Cells(1, Sut).Value
                
                
                        On Error Resume Next
                        a1 = WF.AverageIfs(SumRng, Rng, str, Rng6, Tarih)
                        On Error GoTo 0
                        
                        sh1.Cells(s, Sut).Value = a1
            
    
                a1 = 0
10:
        Next j

      
          a2 = WF.AverageIfs(SumRng, Rng, str, Rng6, ">=" & minDate, Rng6, "<=" & makDate)
        
            sh1.Range("AH" & s).Value = a2

20:

a2 = 0

Urun = ""
str = ""


Next s


Set Rng = Nothing
Set Rng6 = Nothing
Set MyRng = Nothing


End Sub
 

Ekli dosyalar

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba,
Dim minDate As Date, makDate As Date tarih olan tanımlamaları double olarak değiştiriniz.
Kod:
Dim minDate As Double, makDate As Double
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,058
Excel Vers. ve Dili
Office 2013 İngilizce
Çok teşekkürler
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Rica ederim.
 
Üst