假設(shè) D 盤下有一名為 1.docx 的 Word 文檔,其內(nèi)容如下:

站在用戶的角度思考問題,與客戶深入溝通,找到蘭溪網(wǎng)站設(shè)計(jì)與蘭溪網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋蘭溪地區(qū)。
則通過以下代碼即可讀取到該文檔中的內(nèi)容:
Public?Sub?GetWordContent()
Dim?objWordDoc?As?Object
Set?objWordDoc?=?GetObject("D:\1.docx")
MsgBox?objWordDoc.Content.Text,?vbInformation,?"Word"
Set?objWordDoc?=?Nothing
End?Sub
運(yùn)行效果:
不清楚報(bào)錯(cuò)信息,只能給以下提示:
1、工程--引用,選Microsoft Word 11.0 Object Library
2、聲明并賦值word程序相關(guān)變量,注意步驟不能亂。
Dim appObj As New Word.Application '新建一個(gè)word程序?qū)ο?/p>
Dim docObj As Word.Document '聲明文檔對(duì)象,也可以用new新建
Dim strFile As String = "D:\MyDocu.doc"
docObj = appObj.Documents.Open(strFile, False, False, False, "", "", False, "", "", , False, False, False) '打開文檔
docObj.Activate()'激活文檔
.......
With docObj
.Save()
.Close()
End With
docObj = Nothing
appObj = Nothing
注意:聲明word對(duì)象和文檔對(duì)象,應(yīng)該提示錯(cuò)誤,你只需要點(diǎn)擊“示警”圖標(biāo),在展打的選項(xiàng)里選第1項(xiàng)導(dǎo)入就可以了。
添加spire.doc.dll為引用,在vb.net中讀取指定word文檔的內(nèi)容到?txt文件,代碼示例如下:
'加載Word文檔
Dim doc As Document = New Documentdocument.LoadFromFile("測(cè)試文檔.docx")
'使用GetText方法獲取文檔中的所有文本
Dim s As String = doc.GetText
File.WriteAllText("文本1.txt", s.ToString)
1 使用Shell函數(shù)直接調(diào)用
語法:Shell (pathname[,windowstyle]).Pathname是指要執(zhí)行的程序的名字和任何必須的參數(shù)或命令行開關(guān),可以包括目錄和驅(qū)動(dòng)器名;Windowstyle是執(zhí)行程序的窗口風(fēng)格的數(shù)字。
使用Shell調(diào)用Word比較簡(jiǎn)單,編程量小,但必須明確指定Word所在路徑,這不利于移植,而且,不能對(duì)Word進(jìn)行控制,不利于程序和Word之間的數(shù)據(jù)交換。
2 使用OLE自動(dòng)化控制Microsoft Word
2.1 使用方法
(1)Word為OLE自動(dòng)化提供一種稱為“Basic”的對(duì)象,要在VB中控制Word ,首先要定義一個(gè)引用Word中“Basic”對(duì)象的對(duì)象變量:Dim Wordobj as Object
(2)將Word 中的“Basic”對(duì)象賦給該對(duì)象:Set Wordobj=CreateObject("Word.Basic")
(3)可以使用大多數(shù)WordBasic語句和函數(shù)控制Word或Word文檔,使用方法和在Word宏中使用WordBasic指令的方法基本相同。
(4)關(guān)閉Word:Set Wordobj =Nothing。
注意:“Basic”對(duì)象不支持關(guān)閉它自己的一個(gè)方法。即若在OLE自動(dòng)化中關(guān)閉了Word,則對(duì)象被置為Nothing,便不能再對(duì)對(duì)象進(jìn)行操作,程序出錯(cuò)。
2.2 VB指令與WordBasic指令的差異
(1)有一些語句和函數(shù)不能使用,包括:控制結(jié)構(gòu),如While…Wend和If…Then…Else;聲明語句,如Dim;定制對(duì)話框相關(guān)的語句:FileExit語句;要求數(shù)組變量作為參數(shù)的語句或函數(shù)。
(2)也有一些指令使用方法不同。①返回字符串以一個(gè)美元符($)結(jié)束的WordBasic函數(shù)的關(guān)鍵字必須括在方括號(hào)中。例如,在WordBasic宏中的GetBookmark$()語句:mark$=GetBookmark$("Address"),若用VB調(diào)用,必須這樣寫mark$=Wordobj.[Ge-tBookmark$]("Address")。②選擇一個(gè)命令按鈕用“True”,不選擇用“False”
2.3 對(duì)OLE自動(dòng)化的說明
Word可以為OLE自動(dòng)化給另一個(gè)應(yīng)用提供對(duì)象,但是它不能使用OLE自動(dòng)化訪問其它應(yīng)用中的對(duì)象。例如:VB和Excel可以使用OLE自動(dòng)化訪問Word,但是Word不能使用OLE自動(dòng)化訪問它們。
3 在包容器中嵌入Word對(duì)象
在VB中,要訪問在包容器中嵌入的Word對(duì)象,首先要在項(xiàng)目中插入對(duì)象。做法如下:在窗體中插入OLE控件,對(duì)象類型選擇“MicrosoftWord圖片”或“Microsoft Word文檔”,再按“確定”。
然后用Object屬性訪問文檔或圖片,并使用WordBasic語句和函數(shù)作用于它。嵌入的對(duì)象必須在可被訪問之前被激活,可以使用Action屬性激活OLE控件。例如,使用下面指令訪問一個(gè)嵌入在稱為OLE1的OLE控件中的文檔:
Dim Wordobj as Object
OLE1.Action =7
Set Wordobj =OLE1.Object.Application. WordBasic
其他方面,使用方法同OLE自動(dòng)化。使用在包容器中嵌入的Word對(duì)象,Word顯示的窗口大小、位置與OLE控件定義的大小、位置相同,而且工具欄顯示位置與Word脫離。這一點(diǎn)與OLE自動(dòng)化相比,是個(gè)不足。
總之,要想在Microsoft Visual Basic中控制Microsoft Word,最好使用OLE自動(dòng)化,通過使用WordBasic指令對(duì)Word進(jìn)行全面控制,而且,用戶使用起來與使用Microsoft Word一樣,非常方便。
網(wǎng)站欄目:vb.net讀取docx的簡(jiǎn)單介紹
網(wǎng)站路徑:http://www.chinadenli.net/article10/hipcdo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)公司、品牌網(wǎng)站建設(shè)、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)