投稿者 魔界の仮面弁士  (社会人) 投稿日時 2020/9/9 13:22:18
御自身の発言の直前に全角「>」を挿入するスタイルは、ちょっと読みにくいです。

相手の発言を引用する場合は、行頭に半角の「>」を挿入してください。
この掲示板では、引用文が青文字で表示されるようになっています。


> TableBindingSource.Filter = "品番 = '*name' '*"
> の"name" を strText (変数)に置き換えたいのですがどうやるかわかりません。。

TableBindingSource.Filter = "品番 = '" & strText & "'"

ですね。VB2015 以降をお使いであれば、このようにも書けます。

TableBindingSource.Filter = $"品番 = '{strText}'"


実際にはインジェクション対策も必要なことに注意しましょう。
(たとえば、strText 内に「'」の文字が含まれていた場合の対策を行う、ということです)



ところで……品番ということは恐らく、主キー項目もしくは外部キー項目だと思います。

もし、外部キーではなく主キーであるなら、"品番" 列を
その DataTable の PrimaryKey プロパティに割り当てておくと良いでしょう。
(型付 DataSet の場合は、品番列の上で右クリックして、「主キーの設定」を行う)


PrimaryKey が "品番" 列だけを指し示している場合、品番検索の結果は
複数行にはならず、特定の行を指し示すことになりますが、この場合は
下記のような処理も行えます。(この方法では、インジェクション対策が不要です)

Dim row As DataRow = データテーブル.Rows.Find(strText)


型付DataSet を使っている場合には、このように書けます。

Dim row As データセット名.表名Row = データテーブル.FindBy品番(strText)