私は、()内のサイズが静的ではない2D配列を持っています。コードは後でサイズを割り当てます。私はこの配列に関数を渡したいので、それを使ってたくさんのコードを実行できます。VB:2D配列をSubに渡す
マイ配列:
'generate Ingredient array
Dim Ingredients(checkCount2 - 1, 3) As String
Dim maxDim0 As Integer = UBound(Ingredients, 1)
Dim maxDim1 As Integer = UBound(Ingredients, 2)
私は次のことを試してみました:
For i As Integer = 0 To maxDim0
For j As Integer = 0 To maxDim1
GenerateNewImport(Ingredients(i, j), F_IDCode, F_Description, F_VersionDate, F_VersionNumber)
Next j
Next i
OR
GenerateNewImport(Ingredients, F_IDCode, F_Description, F_VersionDate, F_VersionNumber)
OR
GenerateNewImport(Ingredients(), F_IDCode, F_Description, F_VersionDate, F_VersionNumber)
OR
GenerateNewImport(Ingredients(checkCount2-1, 3), F_IDCode, F_Description, F_VersionDate, F_VersionNumber)
となどが、私のようなエラーを得続ける:
(Ingredients, ... : Value of type '2-dimensional array of String' cannot be converted to '1-dimension
となど
My機能は次のとおりです。
Sub GenerateNewImport(ByVal Ingredients(,) As String, ByVal F_IDCode As String, ByVal F_Description As String, ByVal F_VersionDate As String, ByVal F_VersionNumber As String)
End Sub
私に合格する方法上の任意の提案を関数呼び出しに配列?
以下で参照および他の多く:
https://msdn.microsoft.com/en-us/library/5dk93f6e(v=vs.90).aspx
私のテストケースでは、GenerateNewImport(Ingredients、F_IDCode、F_Description、F_VersionDate、F_VersionNumber)が動作しています。 – Misery
申し訳ありません、このメソッド 'Sub GenerateNewImport(ByVal Ingredients(、)As String、ByVal F_IDCodeは文字列、ByVal F_Descriptionは文字列、ByVal F_VersionDateは文字列、ByVal F_VersionNumberはString)'は、あなたの例の1つ、 'GenerateNewImport成分、F_IDCode、F_Description、F_VersionDate、F_VersionNumber) '...実際の問題は何でしたか? – djv
@Verdolino問題は私の機能の中で私の配列を渡すことができませんでした。それは私が言及したエラーを与えた。 Romulus001が私の質問に答えました。問題は私の関数自体が 'GenerateNewImport(Ingredients、..) 'を使って正しく渡していても正しく2D配列をチェックしていないということでした。 – narue1992