返回列表 上一主題 發帖

[發問] Excel VBA + Access 的問題…

[發問] Excel VBA + Access 的問題…

請問:
小弟欲使用Excel VBA + Access來撰寫程式,所以買了書來研究,但是令人氣餒的是,
我連執行書中的範例都出問題,書中是有提到若是安裝Office 64位元的(因為我是安裝
Office 2010 64位元版),要去下載 「Microsoft.Jet.OLEDB」的64位元版本安裝,我
也下載了並安裝了(按我進入連結),
但是,執行該程式依舊出錯,以下列出該程式的一部份(附件是程式的完整版);安裝上
述Microsoft.Jet.OLEDB的64位元版後,執行該程式的【新增記錄】,就出現下圖錯誤:
Err_01.jpg
而查了一下網路上一些解決方法,將
  1. .Provider = "Microsoft.Jet.OLEDB.4.0
複製代碼
改成
  1. Provider = "Microsoft.ACE.OLEDB.12.0
複製代碼
後,上述圖片的錯誤是解決了,但是
卻換成以下的錯誤訊息:
Err_02.jpg
網路上、論壇上也找不到相關的解決方法,請問這個問題要如何解決呢?
謝謝!!

註:
1、附件"CH21.rar"是該書所附的原始程式,我一個字都沒有改過。
2、附件"CH21_Modify.rar",是我將OLEDB4.0改成OLEDB.12.0的程式碼。

CH21.rar (73.32 KB) (原始程式)
CH21_Modify.rar (87.79 KB) (自行改過的程式碼)
  1. Sub AddTransfer(Style As Variant, FromStore As Variant, ToStore As Variant, Qty As Integer)
  2.     ' Page 21-6
  3.     Dim cnn As ADODB.Connection
  4.     Dim rst As ADODB.Recordset
  5.    
  6.     MyConn = ThisWorkbook.Path & Application.PathSeparator & "transfers.mdb"
  7.     MyConn = "Driver=Microsoft Access Driver (*.mdb);DBQ=" & MyConn
  8.     'MyConn = "Driver=Microsoft Access Driver (*.accdb);DBQ=D:\CH21\Transfers.accdb"
  9.    
  10.     ' 開啟連線
  11.     Set cnn = New ADODB.Connection
  12.     With cnn
  13.         .Provider = "Microsoft.ACE.OLEDB.12.0"
  14.         '.Provider = "Microsoft.Jet.OLEDB.4.0"
  15.         .Open MyConn
  16.     End With
  17.    
  18.     ' 定義記錄集
  19.     Set rst = New ADODB.Recordset
  20.     rst.CursorLocation = adUseServer
  21.    
  22.     ' 開啟資料表
  23.     rst.Open Source:="tblTransfer", ActiveConnection:=cnn, _
  24.                       CursorType:=adOpenDynamic, LockType:=adLockOptimistic, _
  25.                       Options:=adCmdTable
  26.    
  27.     ' 新增一筆記錄
  28.     rst.AddNew
複製代碼

回復 5# joey0415

太感謝joey0415大大的幫忙,我已下載成功,準備研究一下您給的程式碼;謝謝!!再次感謝!!

TOP

回復 3# darrenlien

我的dropbox

https://dl.dropboxusercontent.com/u/40393708/VBA/Chapter5.zip

TOP

小弟也想學 如何用Access當作資料庫,Excel當作輸入介面

現在用Execl當作資料庫有時候資料太多時讀取都會變慢

TOP

回復 2# joey0415

首先先感謝 joeyj0415 大的熱心回覆,但是小弟因權限的關係,無法下載該附件,能不能上傳到類似像Mega的免費空間,
或是您直接跟我講程式碼哪邊要修改就行了!!

謝謝!!

TOP

回復 1# darrenlien

附上一個可以用的範例,自己試試看


Chapter5.zip (237.75 KB)

TOP

        靜思自在 : 一句溫暖的話,就像往別人身上灑香水,自己會沾到兩三滴。
返回列表 上一主題