4

私は2つの配列を持っていて、それらの共通の値を引き出そうとしています.findUniques関数は、連結されてコンマで区切られた文字列(名前です)を返すことになっています. 近いと思いますが、何が悪いのかわかりません。10行目でエラーが出ます

Function findUniques(astrArray1() As String, astrArray2() As String) As String

    Dim blnMP5 As Boolean
    blnMP5 = False
    Dim counter1 As Long
    Dim counter2 As Long

    For counter1 = LBound(astrArray1) To UBound(astrArray1)
        For counter2 = LBound(astrArray1) To UBound(astrArray2)
            If astrArray1(counter1) = astrArray2(counter2) Then
                blnMP5 = False
                If blnMP5 = True Then
                    findUniques() = findUniques & "," & "astrArray1()"
                End If
            End If
        Next counter2
    Next counter1

End Function
4

2 に答える 2

4

エラーは次の行にあります。

findUniques() = findUniques & "," & "astrArray1()"

関数呼び出しに値を割り当てようとしていますが、意味がありません。

関数の先頭で変数を宣言し、その変数に追加を続けて、最終的にそれを返す必要があります。

Function findUniques(astrArray1() As String, astrArray2() As String) As String

    Dim blnMP5 As Boolean
    blnMP5 = False    
    Dim counter1 As Long
    Dim counter2 As Long  
    Dim uniquesString as String = ""

    For counter1 = LBound(astrArray1) To UBound(astrArray1)
        For counter2 = LBound(astrArray1) To UBound(astrArray2)
            If astrArray1(counter1) = astrArray2(counter2) Then
               blnMP5 = False
               If blnMP5 = True Then
                   uniquesString = uniquesString & "," & "astrArray1()"
               End If
             End If
        Next counter2
     Next counter1

End Function
于 2013-04-22T21:39:36.770 に答える
0

作成している文字列を保持する変数を宣言します

    Dim tempString as string

これを10行目に追加

    tempString = tempString & "," &  astrArray1(counter1)

そして最後に

    findUniques = tempString 
End function
于 2013-04-22T21:40:07.467 に答える