0

VBA-Excel 2010で独自の関数を作成して、関数argとして渡された配列内のいくつかのものをカウントしようとしています。また、2つの条件も通過します。問題は、Ubound()関数を機能させることができないことです。

コードは次のとおりです。

Function IleGier(Arr As Variant, Champ As String, Data As Date) As Variant 'Integer
    '                arr/\           cond1/\        cond2/\
    Dim i As Integer
    Dim ile As Integer

    ile = -1
    i = 1

    Do While i < UBound(Arr, 1)
        If Arr(1)(i) = Data Then
            If Arr(2)(i) = Champ Then
                ile = ile + 1
            End If
        End If
        i = i + 1
    Loop

    IleGier = ile
    'IleGier = Arr(2)(1)
End Function

配列は常に2次元になります。

元。配列:

15-3-2013 Arg1
15-3-2013 Arg2
15-3-2013 Arg1
15-3-2013 Arg1
16-3-2013 Arg3
16-3-2013 Arg3
16-3-2013 Arg1

の望ましい戻り値は=IleGier(E1:F10;"Arg1";"15-3-2013")3です(この例の日付引数は ""の間違ったbcozに渡される可能性があります)が、関数#ARGを使用している限り戻りますUBound()

任意のヒント?

4

1 に答える 1

3

i2番目のインデックスなので、次を使用する必要があると思います。

Do While i < UBound(Arr, 2)
于 2013-03-24T12:11:26.477 に答える