[英]Search data from Excel using textbox and retrieve in DataGridView in vb.net
我有一个文本框,我希望当我们在文本框内输入内容时,它将从Excel搜索该数据。 然后,来自excel的所选数据的所有记录都应出现在DataGridView中。 我的代码只能从excel获取所有记录。
Try
Dim MyConnection As System.Data.OleDb.OleDbConnection
Dim DtSet As System.Data.DataSet
Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
MyConnection = New System.Data.OleDb.OleDbConnection("provider=Microsoft.ACE.OLEDB.12.0;Data Source='c:\MECH_1.xlsx';Extended Properties=Excel 8.0;")
MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$]", MyConnection)
MyCommand.TableMappings.Add("Table", "TestTable")
DtSet = New System.Data.DataSet
MyCommand.Fill(DtSet)
DataGridView1.DataSource = DtSet.Tables(0)
MyConnection.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
![1]: https : //i.stack.imgur.com/unTan.png
您需要在“查询”中提及“ textbox
值,并使用“ Like
命令”,如下所示。
Try
Dim MyConnection As System.Data.OleDb.OleDbConnection
Dim DtSet As System.Data.DataSet
Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
MyConnection = New
System.Data.OleDb.OleDbConnection("provider=Microsoft.ACE.OLEDB.12.0;Data
Source='c:\MECH_1.xlsx';Extended Properties=Excel 8.0;")
MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from
[Sheet1$] where country like '%" & Trim(textbox1.Text) & "%' or Name like '%" & Trim(textbox1.Text) & "%'", MyConnection)
MyCommand.TableMappings.Add("Table", "TestTable")
DtSet = New System.Data.DataSet
MyCommand.Fill(DtSet)
DataGridView1.DataSource = DtSet.Tables(0)
MyConnection.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
注意:在哪个国家(地区)LIKE'%or%'查找在任何位置带有“或”的任何值WHERE CustomerName LIKE'%a'查找以“ a”结尾的任何值WHERE CustomerName LIKE'a%'查找以下列开头的任何值“一种”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.