如何将Excel中的数据导入到DataGridView中

zjljk2000 2010-03-22 08:43:29
如何将Excel中的数据导入到DataGridView中显示,然后保存到数据库.

即先在DataGridView显示后保存


请问如何显示??
...全文
522 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjljk2000 2010-03-25
  • 打赏
  • 举报
回复
请问3楼,怎样将导入到datagridview中的数据保存到数据库中呢?
tjficcbw 2010-03-23
  • 打赏
  • 举报
回复
3楼方便,实用,快捷,我的代码与之不在一个层面上,
学习了

wuyq11 2010-03-22
  • 打赏
  • 举报
回复
Dim fileName As String
Me.OpenFileDialog1.Filter = "Excle文件(*.xls)|*.xls"
If Me.OpenFileDialog1.ShowDialog() = DialogResult.OK Then
fileName = Me.OpenFileDialog1.FileName
Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & fileName & "';Extended Properties=Excel 8.0;"
Dim myDataset As New DataSet
Dim da As New OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn)
Try
da.Fill(myDataset)
Me.DataGrid1.DataSource = myDataset.Tables(0)
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End If
appleller 2010-03-22
  • 打赏
  • 举报
回复
读EXCEL:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Dim myStream As System.IO.Stream
OpenFileDialog1.InitialDirectory = My.Computer.FileSystem.CurrentDirectory
OpenFileDialog1.Filter = "excel files (*.xls)|*.xls|All files (*.*)|*.*"
OpenFileDialog1.FilterIndex = 2
OpenFileDialog1.RestoreDirectory = True
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim fileName As String
fileName = Me.OpenFileDialog1.FileName
'建立EXCEL连接,读入数据
Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & fileName & "';Extended Properties=Excel 8.0;"
'Dim myDataset As New DataSet
Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn)
Try
da.Fill(myDataset)
Me.DataGridView1.DataSource = myDataset.Tables(0)
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End If
End Sub

写入SQL:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'建立SQL连接,写入数据
Dim sqlconnection1 As New SqlConnection
Dim sconnstring As String = "server=su;uid=sa;pwd=;database=XXX"
sqlconnection1.ConnectionString = (sconnstring)
sqlconnection1.Open()
myDataset.Tables(0).Columns.Add("结果")
Dim i, j As New Integer
i = myDataset.Tables(0).Rows.Count - 1
j = 0
'i = Me.DataGridView1.RowCount
'j = Me.DataGridView1.ColumnCount
Me.ProgressBar1.Visible = True
ProgressBar1.Maximum = i

For i = 0 To i
Try
Dim insertstr As String = "insert into customer (ccuscode,ccusname,ccccode,cCusExch_name,dCusDevDate,cCusAbbName) values ('" + myDataset.Tables(0).Rows(i).Item(0).ToString + "','" + myDataset.Tables(0).Rows(i).Item(1).ToString + "','" + myDataset.Tables(0).Rows(i).Item(2).ToString + "','" + myDataset.Tables(0).Rows(i).Item(3).ToString + "','" + myDataset.Tables(0).Rows(i).Item(4).ToString + "','" + myDataset.Tables(0).Rows(i).Item(5).ToString + "')"

Dim cmd As SqlCommand = New SqlCommand(insertstr, sqlconnection1)
cmd.ExecuteNonQuery()
myDataset.Tables(0).Rows(i).Item("结果") = "写入成功"
j = j + 1
Catch ex As Exception
myDataset.Tables(0).Rows(i).Item("结果") = ex.Message.ToString
'MsgBox(ex.Message.ToString)
End Try
ProgressBar1.Value = i
Next
ProgressBar1.Visible = False
MsgBox("成功导入" & j & "条记录")
sqlconnection1.Close()
End Sub

输出结果到EXCEL:

....

tjficcbw 2010-03-22
  • 打赏
  • 举报
回复
先打开 
http://topic.csdn.net/u/20100319/14/eff9c973-bcdf-4297-8b86-0df14f440521.html
在12楼有代码
用这个方法存储到DataGridView里,
再个DataGridView存储到数据库

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧