WinXP、VB2005でデータベースプログラムを作成しています。
TextBoxから抽出条件を指定し、DataGridViewに表示しています。
文字列型の列に対し、
条件を a と入力することで
a....
のデータを抽出することができました。
Table.DefaultView.RowFilter = "xxx LIKE '" & TextBox1.Text & "%'"
日付型の列に対し、
条件を 2 と入力することで
2....
のデータを抽出できるようにしたのですが、
このようなことは可能なのでしょうか?
どなたかアドバイスよろしくお願いいたします。
2...
の日付ってのがどんなのかよく分かりませんが、CONVERT 関数で文字列型に変換することはできますね。書式指定はできませんけど。
CONVERT 関数の使い方については DataColumn.Expression の解説をご覧ください。
文字列が有効な日付かどうか判定し、
有効な日付であれば目的の形に加工して返す共通関数を作るべし。
ヒント
Try
Dim objDate As Date = Date.Parse(TextBox1.Text)
Catch ex As Exception
MsgBox("日付じゃないよ")
End
> 日付型の列に対し、
> 条件を 2 と入力することで
「日付」と「2」の関係性が良く分かりませんが、RowFilter で
日付値を抽出したいのであれば、
.RowFilter = "列名 = #12/31/2001 13:24:56.7890123#
といった構文で指定する事になります。
http://msdn.microsoft.com/ja-jp/library/det4aw50%28VS.80%29.aspx
http://msdn.microsoft.com/ja-jp/library/system.data.datacolumn.expression.aspx