0

我的目的是將* .html文檔鏈接到MS Access數據庫並將其導出到* .XLS文件。 問題是我的* .html文件包含50多個類似的表格。如何將HTML文檔與多個表格鏈接到MS Access數據庫

enter image description here

如果我使用「鏈接HTML嚮導」,它看起來像

enter image description here

在這裏,我可以選擇,我要鏈接的HTML文檔中特定的表。 但每次我有不同數量的表格形式從50到100不同的HTML文件。表格的結構是相同的。我不確定最好的方法是通過手動將100個錶鏈接到數據庫。另外,我可以在「鏈接表管理器」看我的鏈接表的路徑: enter image description here

我寫了一些VBA代碼到每個表的連接到數據庫:

Set MyDB = CurrentDb() 
i = 0 
For i = 1 To 100 

Set MyTable = MyDB.TableDefs("ZVPL") 

MyTable.Connect = ";Database=" & MYc_Path_HTML & "\" & "ZVPL.htm" & "\" & "Report output" & i 
MyTable.RefreshLink 
Call ExportToXLS("ZVPL") 'function that allows to export my table to XLS 
i = i+1 
Next 

但它不工作。錯誤是「無法找到文件... \ Report output1」。我也檢查過,路徑是正確的。 從* .html文檔中提取所有表格的最佳方法是什麼?

回答

0

通過添加連接字符串等解決問題:

Set MyDB = CurrentDb() 

i = 0 
For i = 1 To 100 
    Set MyTable = MyDB.CreateTableDef("ZVPL") 
    MyTable.SourceTableName = "Report output" & i 
    MyTable.Connect = "HTML Import;DSN=ZVPL Link Specification1;HDR=NO;IMEX=3;CharacterSet=65001;Database=" & MYc_Path_ZVPLHTM & "ZVPL.htm" 
    MyDB.TableDefs.Append MyTable 
    MyDB.TableDefs.Refresh 
    Call ExportToXLS("ZVPL") 'Export to Excel 
    DoCmd.SetWarnings False 
    MyDB.Execute "DROP TABLE " & "ZVPL" 
    DoCmd.SetWarnings True 
Next 
相關問題