台灣最大程式設計社群網站
線上人數
1469
 
會員總數:246321
討論主題:189850
歡迎您免費加入會員
討論區列表 >> ACCESS >> 多個ACCESS資料表匯入
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
多個ACCESS資料表匯入
價值 : 100 QP  點閱數:431 回應數:8
樓主

b0446
門外漢
0 4
183 13
發送站內信

抱歉我是新手,
我有一個access 2007資料庫系統範本,本身使用的是ACCESS 2003 日後要套進去用,但目前測試範本多次並無任何動作反應,請問各位大大不知道哪裡出問題了?

請各位大大幫忙。

一、匯入ACCESS檔:
按表單「匯入ACCESS多檔」按鍵將連結資外部ACCESS多個檔匯入
===========
Private Sub 匯入ACCESS多檔_Click()
Dim linkTB As DAO.Recordset
Set linkTB = CurrentDb.OpenRecordset("Select * from LinkOK") '讀取LINKOK表列中的access
If linkTB("Link") = "N" Then '若是讀取Y OR N 欄位
Dim fn As String, tg As String
tg = CurrentProject.Path
If Right(tg, 1) <> "\" Then
tg = tg & "\"
End If
fn = tg & linkTB("filename")
CurrentDb.TableDefs.Refresh
Dim db As DAO.Database
Dim re As DAO.Recordset
Set db = CurrentDb
Set re = CurrentDb.OpenRecordset("select * from LINK_Table") '連結access內的資料庫
Do Until re.EOF '刪除現有資料表
On Error Resume Next
db.TableDefs.Delete re("tbname")
re.MoveNext
Loop
db.TableDefs.Refresh
re.MoveFirst '移至第一筆
Dim db_Data As DAO.Database
Set db_Data = DBEngine.Workspaces(0).OpenDatabase(fn)
Do Until re.EOF
Dim table As TableDef
Set table = db.CreateTableDef(re("tbName")) '建立連結
table.Connect = ";DATABASE=" & db_Data.Name
table.SourceTableName = re("tbName")
db.TableDefs.Append table '將新資料表加入至現用資料庫
table.RefreshLink
re.MoveNext
Loop
CurrentDb.Execute "Update LinkOK set datapath='" & Left(fn, InStrRev(fn, "\")) & "',Link='Y'"
End If
DoCmd.OpenForm "MainForm"
End Sub
=================================

1.資料表:
Link_Table:tbname欄_課程登記、用餐登記(2筆資料)
LINKOK:
Type欄:ACCESS、
Link欄:Y OR N、
filename欄:1-1.mde' 1-2.mde' 1-3.mde
datapath欄:D:\待列印
用餐登記:學員編號、日期、份數
課程登記:學員編號、課程名稱、課程日期
2.外部在「D:\待列印」放置
1-1.mde' 1-2.mde' 1-3.mde
以上檔案皆內含資料表:
用餐登記:學員編號、日期、份數
課程登記:學員編號、課程名稱、課程日期




搜尋相關Tags的文章: [ 未指定位置檔名,匯入外部多個資料表 ] ,
本篇文章發表於2021-02-24 10:27
1樓
回應

羅伯斯
檢舉此回應
Access 2003 與 Access 2007 ,兩者的檔案是不一樣的, 2003 的副檔名是 .mdb,而 2007 的副案名則為 .accdb ,你的 Access 2003
肯定是無法直接匯入 Access 2007 的檔案,必須先找到較新版本的 Access ,把 .accdb 檔轉成 .mdb , 才能用 Access 2003 匯入.

由於 Access 2003 太老舊了, 建議你最少升級到 Access 2010 版.
本篇文章回覆於2021-03-01 01:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

b0446
檢舉此回應
謝謝大大,真的是新手,也心太粗沒意識到這個問題!
因原先系統即為 ACCESS 2003,之前曾想升級,但出現問題,內部程式太多是小弟無法理解的,又影響層面太大,只能繼續使用。

目前已將範本重新以ACCESS 2003做了一個新檔,但仍無法執行???
是因為上面的範本程式碼,有ACCESS 2003無法支援的嗎??感恩!
本篇文章回覆於2021-03-02 09:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

羅伯斯
檢舉此回應
ACCESS 的程式碼,並不是獨立的檔案,而是連結在資料庫檔內,所以 ACCESS 2003 一樣無法支援.
本篇文章回覆於2021-03-03 01:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

b0446
檢舉此回應
請問大大,就以上的範本,無法在ACCESS 2003執行的意思?
技術上,2003無法有其他方式完成這樣的動作?
本篇文章回覆於2021-03-03 09:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

b0446
檢舉此回應
剛把它全部用ACCESS 2007也是沒反應?!

是不是因為小弟的系統太舊了,大家比較無法幫小弟解惑?!
本篇文章回覆於2021-03-03 10:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

羅伯斯
檢舉此回應
你確定用 ACCESS 2007 也不能開啟範例檔嗎? 開啟時 ACCESS 有出現何種訊息?
本篇文章回覆於2021-03-05 01:11
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

b0446
檢舉此回應
大大,程式沒任何反應!外部資料庫的資料,並未匯入。
本篇文章回覆於2021-03-05 07:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

b0446
檢舉此回應
對不起,不會用,關閉話題時,想將部份的EP給參與者羅伯斯,但不慎被份配完畢了!!
本篇文章回覆於2021-03-19 06:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.