• 締切済み

配列と互換性のない型の要素にアクセスしようとしまし

以下のソースでサブルーチン呼び出し行で例外「配列と互換性のない型の要素にアクセスしようとしました」が出ます。 -------------------------------------------------------------------------- Private Sub メインルーチン()  Dim Rows() As Data.DataRow = MyDataSet.Tables(MyTableName).Select("条件") if Rows.Count <> 0 then サブルーチン (Rows(0)) end if End Sub Private Sub サブルーチン(ByRef Row As Data.DataRow) '処理 End Sub ---------------------------------------------------------------------------- サブルーチンを呼び出す前に以下のようにするとエラーはでません。 Dim Row as Data.DataRow = Rows(0) サブルーチン (Row) これはなぜなのでしょうか?RowはData.DataRow型であり、配列の要素Rows(0)もData.DataRow型でありエラーが出る意味が分からないのですが。

みんなの回答

回答No.1

テーブルのレコードがあったら、そのデータをサブルーチンで何かしらの処理をさせたいという事ですかね? であれば、多分、以下の間違いでは? >Dim Rows() As Data.DataRow = MyDataSet.Tables(MyTableName).Select("条件") ↓ Dim Rows As Data.DataRow = MyDataSet.Tables(MyTableName).Select("条件") >サブルーチン (Rows(0)) ↓ サブルーチン (Rows) ※配列の要素Rows(0)はData.DataRow型ではなく、Data.DataRow型の中の1要素にすぎないと思うのですが・・・。 間違っていたらスミマセン。