投稿者 yatuka  (学生) 投稿日時 2010/6/22 23:56:04
初めまして。
ふとプログラムに興味を持ち、手始めにでDatatableの中身を検索し表示する
プログラムを作ろうとしています。

Datatable.Selectの検索条件に変数を使うことはできませんでしょうか。
以下のようにコードを書いた場合はうまく動くのですが、


        'テーブルの作成・列の定義
        Dim Testdatatable As DataTable = New DataTable

        Testdatatable.Columns.Add("GoodsName")
        Testdatatable.Columns.Add("GoodsNumber")


        '行の追加
        Dim TestNewrow As DataRow = Testdatatable.NewRow

        TestNewrow("GoodsName") = "test"
        TestNewrow("GoodsNumber") = "12345"
        Testdatatable.Rows.Add(TestNewrow)


        '検索・商品名の表示
        Dim Search() As DataRow = Testdatatable.Select("goodsNumber = 12345")
        MsgBox(Search(0).Item("goodsname"))


一番下の部分をこのように書き換えると「列[hensuu]が見つかりません」とのエラーが出てしまい動きません。


        '検索・商品名の表示
        Dim hensuu As String = "12345"

        Dim Search() As DataRow = Testdatatable.Select("goodsNumber = hensuu")
        MsgBox(Search(0).Item("goodsname"))


変数を使って検索できるようにしたいのですが、その方法がMSDN等を読んでもどうしても分かりません。
良い方法がありましたらご教示頂ければ幸いです。