vb连接access excel步骤 excel 导入access
2011-04-15 19:31
260 查看
第一步
新建vb工程 新建数据库
第二步
引入数据库环境:
ms activiteX data OBJECTS 2.8 LIBRARY
ms excel 11.0
引入显示控件:
常用的有三个
datagrid:可以直接从表格修改数据库数据 但是不能设置每行的颜色 推荐2st
flexgrid:可以显示数据库数据 只读的
hflexgrid:支持ado 可以设置每行显示数据的颜色 推荐1st
第三步:编写代码 将数据库数据筛选显示到表格控件里面
----------------------------------------------------------------------
下面给出我写的vb连接access 和excel的源代码
----------------------------------------------------------------------
全部源代碼
VB壓縮access2003
'工程引入Microsoft Jet and Replication Objects Library
Private Sub Command1_Click()
Dim path, path1 As String
Dim FIXDB As New JRO.JetEngine
path = App.path & "\base\tmsdata.mdb"
path1 = App.path & "\base\tmsdata_tmp.mdb"
FIXDB.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path1
Kill path '刪除源文件
FileCopy path1, path '生成壓縮後的源文件
Kill path1 '刪除緩存的文件
MsgBox " OK"
End Sub
新建vb工程 新建数据库
第二步
引入数据库环境:
ms activiteX data OBJECTS 2.8 LIBRARY
ms excel 11.0
引入显示控件:
常用的有三个
datagrid:可以直接从表格修改数据库数据 但是不能设置每行的颜色 推荐2st
flexgrid:可以显示数据库数据 只读的
hflexgrid:支持ado 可以设置每行显示数据的颜色 推荐1st
第三步:编写代码 将数据库数据筛选显示到表格控件里面
----------------------------------------------------------------------
下面给出我写的vb连接access 和excel的源代码
----------------------------------------------------------------------
Dim ConStr As String Dim cn As adodb.Connection Dim rs As adodb.Recordset Dim statestring As String Dim addrs As String Private Sub Form_Load() 'On Error GoTo ERR Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "/tmsdatas.mdb;Persist Security Info=False" 'ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + "//172.17.180.60/net/tmsdata.mdb;Persist Security Info=False" '------------------change cn.Open ConStr cn.CursorLocation = adUseClient Select Case cn.State Case adStateClose statestring = "adStateClosed" Case adStateOpen statestring = "adStateOpen" End Select '显示连接的状态 If statestring = "adStateClosed" Then MsgBox "数据库连接失败!", , statestring Text1.Text = "连接失败" Else Text1.Text = "连接成功" End If '----------open the table------------------ rs.Open "Select * from buy", cn, 3, 3 Set MSHFlexGrid1.DataSource = rs Call SetRowColor(MSHFlexGrid1) Exit Sub 'ERR: 'MsgBox "LOAD ERROR", , "TIPS" End Sub ----------------------------------------------------------------------连接excel数据--------------------------------- Dim cnn As adodb.Connection Set cnn = New adodb.Connection Dim XLS_FILE As String Set cn1 = CreateObject("ADODB.Connection") Set rs1 = CreateObject("ADODB.Recordset") cn1.Open "provider=Microsoft.Jet.OLEDB.4.0;" & "data source=" & App.Path & "/buy.xls;" & "Extended Properties=Excel 8.0;" rs1.Open "select STATE from [sheet1$] where STATE=0", cn1, 3, 3 If rs1.RecordCount = 0 Then '*** no new data*** MsgBox "没有新数据" Text1.Text = "没有新数据" Else '*** have new data*** '*** add new data*** Text1.Text = "检测到新数据" Text1.Text = rs1.RecordCount Set MSHFlexGrid2.DataSource = rs1
全部源代碼
'-------define hong------------ Dim ConStr As String Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim cn1 As ADODB.Connection Dim rs1 As ADODB.Recordset Private statestring As String Private Sub Command1_Click() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection Dim Source As String CommonDialog1.Filter = "All Files (*.*)|*.xls" CommonDialog1.FilterIndex = 2 CommonDialog1.ShowOpen Text3.Text = CommonDialog1.FileName Source = CommonDialog1.FileName With cnn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=" & Source & ";Extended Properties=Excel 8.0;" .Open .Execute "INSERT INTO [toolsok] IN '" & App.Path & "\toolsdemo.mdb' SELECT * FROM [Sheet1$] " .Close End With MsgBox "ok" End Sub Private Sub Command2_Click() On Error GoTo ErrHandler CommonDialog1.Filter = "All Files (*.*)|*.xls" CommonDialog1.FilterIndex = 2 CommonDialog1.ShowOpen Text3.Text = CommonDialog1.FileName Exit Sub ErrHandler: End Sub Private Sub Form_Load() Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\toolsdemo.mdb;Persist Security Info=False" '------------------change cn.Open ConStr cn.CursorLocation = adUseClient Select Case cn.State Case adStateClose statestring = "adStateClosed" Case adStateOpen statestring = "adStateOpen" End Select If statestring = "adStateClosed" Then MsgBox "CONNECT ERROR!", , statestring Else End If '----------open the table------------------ rs.Open "SELECT * FROM toolsok order by 識別碼 desc", cn, 2, 3 Set DataGrid1.DataSource = rs Text4.Text = rs.d DataGrid1.Refresh Call show_excel End Sub Private Function show_excel() Set cn1 = New ADODB.Connection Set rs1 = CreateObject("ADODB.Recordset") Dim XLS_FILE As String Set cn1 = CreateObject("ADODB.Connection") Set rs1 = CreateObject("ADODB.Recordset") cn1.Open "provider=Microsoft.Jet.OLEDB.4.0;" & "data source=" & App.Path & "/excel.xls;" & "Extended Properties=Excel 8.0;" rs1.Open "select * from [sheet1$]", cn1, 3, 3 Text2.Text = rs1.RecordCount Set MSHFlexGrid1.DataSource = rs1 MSHFlexGrid1.Refresh End Function
VB壓縮access2003
'工程引入Microsoft Jet and Replication Objects Library
Private Sub Command1_Click()
Dim path, path1 As String
Dim FIXDB As New JRO.JetEngine
path = App.path & "\base\tmsdata.mdb"
path1 = App.path & "\base\tmsdata_tmp.mdb"
FIXDB.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path1
Kill path '刪除源文件
FileCopy path1, path '生成壓縮後的源文件
Kill path1 '刪除緩存的文件
MsgBox " OK"
End Sub
相关文章推荐
- VB把excel数据导入ACCESS
- vb中怎样将excel表导入到access中
- C# 连接sql数据库对 access,excel导入导出操作
- C# 连接sql数据库对 access,excel导入导出操作 一、SQL SERVER 和ACCESS的数据导入导出
- C# 连接sql数据库对 access,excel导入导出操作
- 在vb中利用按钮把access查询内容导入到excel 002
- phpExcel实现Excel数据的导入导出(全步骤详细解析)
- 如何将Access和Excel导入到Mysql中之一
- ADO.NET 连接access 和 excel
- excel导入到access
- VB.NET Excel导入
- 利用SQL Server的DTS操作EXCEL、Access等数据表的导入导出
- Vb.net连接oracle,selserver,access的共通类
- [VB.NET]救命啊!!!数据库导入excel中的问题
- 导入excel数据到sql2005详细方法和步骤
- java连接数据库(二)access: 简单连接步骤
- C# 连接EXCEL 和 ACCESS
- 实现SQL Server与Access、Excel数据表间的导入导出
- 将excel 文件导入access数据表
- 轻松实现SQL Server与Access、Excel数据表间的导入导出