萬盛學電腦網

 萬盛學電腦網 >> WORD教程 >> WORD使用技巧 >> DBF數據庫如何批量轉Word文檔?

DBF數據庫如何批量轉Word文檔?

   DBF數據庫中的數據怎樣轉到WORD文檔中?手工進行復制粘貼需要耗費不少時間精力,其實,一段小小的代碼可以解決問題。你只需照搬即可。下面就為你詳細介紹DBF數據庫批量轉Word文檔教程。

  筆者在近期的工作中,定期需要對一些文檔信息進行歸類整理,並利用Visual FoxPro 制作成DBF數據表文件,同時還需要根據該數據表導出Excel文檔,並且制作Word文檔信息表進行打印輸出。由於DBF數據表的表結構以及Word文檔中表格字段都是固定的,加上每次整理的文檔信息數量頗大,手工進行復制粘貼需要耗費不少時間精力,因此筆者編寫了一個實現批量復制的小程序,即實現DBF數據到Word文檔表格的自動輸出。

  程序開發環境為:VB6.0,Foxpro 6.0,Word 2003。

  程序應用的相關技術有:ADO( (ActiveX Data Objects) )、OLE(Object Linking and Embedding,對象連接與嵌入)。

  程序實現的基本思路是,通過ADO訪問DBF數據表,獲取數據表內容,並將其寫入固定格式的Word文檔表格。

  使用到的主要對象有 ADODB.Connection、ADODB.Recordset,Word.Application、Word.Acttivedocument、Word.Range等。

  通過ADO實現DBF數據表的訪問,VB代碼如下:

  Dim cn As New ADODB.Connection

  cn.ConnectionTimeout = 15

  cn.ConnectionString = "Provider=MSDASQL;" & _

  "Driver={Microsoft Visual Foxpro Driver};" & _

  "SourceType=DBF;" & _

  "SourceDB=" & dbfpath

  cn.Open

  實現DBF數據表的數據獲取,VB代碼如下:

  Private rec As Variant

  Dim rs As ADODB.Recordset

  et rs = New ADODB.Recordset

  Dim sqlstr As String

  sqlstr = "select * from " & dbfname

  rs.Open sqlstr, cn, adOpenStatic, adLockPessimistic

  rec = rs.GetRows(n)

  通過OLE實現打開Word文檔,VB代碼如下:

  Private objWD As word.Application

  Set objWD = CreateObject("Word.Application")

  objWD.Documents.Open newfile ‘newfile 為文件名

  實現Word文檔表格內容的填寫,VB代碼如下:

  ActiveDocument.Tables.Item(i).Cell(j, wordcol).Range.Text = rec(j, i - 1)

  (說明:rec 是一個存儲 Recordset數據集中數據的多維數組)

  說明:為方便使用,所有相關代碼(如圖)也可到http://iask.sina.com.cn/u/ish?uid=1704202287下載。

DBF數據庫如何批量轉Word文檔? 三聯

        .

copyright © 萬盛學電腦網 all rights reserved