加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

VB.net读取Excel文件内容

发布时间:2020-12-17 07:59:36 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 Imports System.Data.OleDbPublic Class Form1 Private _FilePath As String = "" Private _DS As DataSet Private Const _Connectstring = "Provider

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

Imports System.Data.OleDb
Public Class Form1
   Private _FilePath As String = ""
   Private _DS As DataSet
   Private Const _Connectstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=<FilePath>;Extended Properties=""Excel 8.0"""
   Private Const _SelectData = "Select * from [<TableName>$]"
   Private Sub TSBSelectFile_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TSBSelectFile.Click
      Me.OFDExcel.FileName = _FilePath
      If Not Me.OFDExcel.ShowDialog(Me) = vbOK Then
         Exit Sub
      End If
      _FilePath = Me.OFDExcel.FileName
      Me.TSLFilePath.Text = _FilePath
      Try
         Using cn As OleDb.OleDbConnection = New OleDbConnection(_Connectstring.Replace("<FilePath>",_FilePath))
            cn.Open()
            _DS = New DataSet
            Dim tb As DataTable = cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,Nothing)
            Me.TSCBOSheetList.Items.Clear()
            For Each r As DataRow In tb.Rows
               If r("TABLE_TYPE") = "TABLE" Then
                  Me.TSCBOSheetList.Items.Add(r("TABLE_NAME").ToString.Replace("$",""))
               End If
            Next
            If Me.TSCBOSheetList.Items.Count > 0 Then
               Me.TSCBOSheetList.SelectedIndex = 0
            End If
         End Using
      Catch ex As Exception
         MsgBox(ex.Message)
      End Try
   End Sub

   Private Sub TSCBOSheetList_SelectedIndexChanged(ByVal sender As Object,ByVal e As System.EventArgs) Handles TSCBOSheetList.SelectedIndexChanged
      Try
         Dim TBName As String = Me.TSCBOSheetList.SelectedItem.ToString
         If _DS.Tables.Contains(TBName) Then
            Me.DataGridView1.DataSource = _DS.Tables(TBName)
            Exit Sub
         End If
         Using cn As OleDb.OleDbConnection = New OleDbConnection(_Connectstring.Replace("<FilePath>",_FilePath))
            cn.Open()
            Dim sql As String = _SelectData.Replace("<TableName>",TBName)
            Using ad As OleDbDataAdapter = New OleDbDataAdapter(sql,cn)
               ad.Fill(_DS,TBName)
               Me.DataGridView1.DataSource = _DS.Tables(TBName)
            End Using
         End Using
      Catch ex As Exception
         MsgBox(ex.Message)
      End Try
   End Sub
End Class

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读