第一步:将EXCEL数据导入一个数据表,即*.dbf数据表。注:excel表与*.dbf表中字段必须一一对应。
第二步:grid控件中显示数据表中内容。至于grid中显示什么,可以另行按要求设计代码,比如全部显示、部分显示、规定日期范围的内容显示等等。
VB我不熟悉!
在 WinForm中打开Excel托一个 openFileDialog(openFileDialogSource) 和 toolStrip 和ComboBox(ctlPath) 控件
代码:
DataTable dTable
// 打开
private void buttonOpen_Click(object sender, EventArgs e)
{
if (openFileDialogSource.ShowDialog()==DialogResult.OK)
{
ctlPath.Text = openFileDialogSource.FileName
ExceltoDataSet(ctlPath.Text)
}
}
//打开方法
public DataTable ExceltoDataSet(string path)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" + path + "Extended Properties='Excel 8.0HDR=YesIMEX=1'"
OleDbConnection conn = new OleDbConnection(strConn)
conn.Open()
System.Data.DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null)
string tableName = schemaTable.Rows[0][2].ToString().Trim()
string strExcel = ""
OleDbDataAdapter myCommand = null
DataSet ds = null
strExcel = "Select * From [" + tableName + "]"
myCommand = new OleDbDataAdapter(strExcel, strConn)
ds = new DataSet()
myCommand.Fill(ds, tableName)
System.Data.DataTable dt = ds.Tables[0]
dTable = dt
return dt
}
//显示数据
private void tsbRefresh_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(ctlPath.Text))
{
ctlPath.Focus()
return
}
try
{
for (int i = 7i >= 0i--)
{
dTable.Rows.Remove(dTable.Rows[i])
}
gridSource.DataSource = dTable// gridSource :( DataGridView)
}
catch (Exception)
{
throw
}
}
实现Excel文件导入的步骤:首先,安装ExcelIO Server;
然后,为ExcelIO创建授权文件;
最后,添加服务器端代码的服务器按钮单击事件处理方法。
具体的实现步骤,请参考下面的博客
http://blog.gcpowertools.com.cn/post/ExcelIO.aspx
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)