VBA通过变量生成公式

VBA通过变量生成公式,vba,excel,Vba,Excel,有人能帮我修正一下sub中的公式吗?我需要通过变量输入日期,但它总是给我一个错误“13”数据类型 我说的是比特: Cells(5, field).FormulaLocal = "=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;""bezahlt"";Rawdata!A2:A3446;" >= " & weekstart & "";Rawdata!A2:A3446;" <= " & weekend & "")"

有人能帮我修正一下sub中的公式吗?我需要通过变量输入日期,但它总是给我一个错误“13”数据类型

我说的是比特:

Cells(5, field).FormulaLocal = "=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;""bezahlt"";Rawdata!A2:A3446;" >= " & weekstart & "";Rawdata!A2:A3446;" <= " & weekend & "")"

Cells(5,field).FormulaLocal=“=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;”“bezahlt”“;Rawdata!A2:A3446;”>=“&weekstart&”“;Rawdata!A2:a346;”我建议您转换为long(如果需要时间,可以转换为double)

Cells(5,field).FormulaLocal=“=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;”“bezahlt”“;Rawdata!A2:A3446;”“>=”&CLng(weekstart)&“Rawdata!A2:a346;”
Sub get_cal_weeks()
    Dim weeks As Integer, i As Integer, col As String, weekstart As Date, weekend As Date, calweeks() As Variant
    'start column is D
    col = "D"
    'get amount of weeks
    weeks = countcalweeks()
    'populate array calweeks
    calweeks = fillcalweeks(weeks)
    For i = 0 To weeks
        field = i + i + 4
        weekstart = calweeks(i, 0)
        weekend = calweeks(i, 1)
        Cells(5, field).FormulaLocal = "=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;""bezahlt"";Rawdata!A2:A3446;" >= " & weekstart & "";Rawdata!A2:A3446;" <= " & weekend & "")"

    Next
End Sub
Cells(5, field).FormulaLocal = "=SUMMEWENNS(Rawdata!K2:K3446;Rawdata!I2:I3446;""bezahlt"";Rawdata!A2:A3446;"">=" & CLng(weekstart) & """;Rawdata!A2:A3446;""<=" & CLng(weekend) & """)"