《VBA信息獲取與處理》教程(10178984)是我推出第六套教程,目前已經(jīng)是第一版修訂了。這套教程定位于最高級,是學(xué)完初級,中級后的教程。這部教程給大家講解的內(nèi)容有:跨應(yīng)用程序信息獲得、隨機信息的利用、電子郵件的發(fā)送、VBA互聯(lián)網(wǎng)數(shù)據(jù)抓取、VBA延時操作,剪貼板應(yīng)用、Split函數(shù)擴展、工作表信息與其他應(yīng)用交互,F(xiàn)SO對象的利用、工作表及文件夾信息的獲取、圖形信息的獲取以及定制工作表信息函數(shù)等等內(nèi)容。程序文件通過32位和64位兩種OFFICE系統(tǒng)測試。是非常抽象的,更具研究的價值。
教程共兩冊,二十個專題。今日分享內(nèi)容是:第四節(jié)(1):EXCEL中判斷一個WORD文件是否被打開
【分享成果,隨喜正能量】茶,可以品嘗人生百味;書可以找回心靈的皈依。輕擁一米陽光入懷,和著書香,任流淌的心事,在季節(jié)中淺漾,生命就在這悠然的時光中婉約成一朵花。。
第四節(jié)在EXCEL中打開及修改WORD文件
在上面的專題中,我們講了如何在WORD中打開EXCEL。那么同理,如何在EXCEL中打開WORD呢?在這講中我給出專題的講解,這個講解中我們將利用CreateObject函數(shù)和GetObject 函數(shù)分別建立一個引用及獲取已經(jīng)打開的WORD文件信息。這講的內(nèi)容為了增加實用性,我在程序中還給出了如何向WORD的表格(非嵌套)中添加數(shù)據(jù),這個數(shù)據(jù)來源于EXCEL。
1EXCEL中判斷一個WORD文件是否被打開
在EXCEL中判斷WORD文件是否被打開,我們可以利用GetObject 函數(shù)獲取一個WORD主程序的返回情況。這里我利用一個WordIsOpen的函數(shù)過程。代碼如下:
Function WordIsOpen(ByVal strDocName As String) As Boolean
'判斷Word文檔是否被重復(fù)打開
Dim myWd As Object
WordIsOpen = False
Set myWd = Nothing
On Error Resume Next
strDocName = UCase(strDocName)
'判斷是否有Word程序被打開
Set myWd = GetObject(, "WORD.Application")
For Each doc In myWd.Documents
UU = UCase(doc.FullName)
If UU = strDocName Then
WordIsOpen = True
Exit For
End If
Next
Set myWd = Nothing
End Function
代碼截圖:
代碼講解:這是一個函數(shù)過程,需要輸入一個strDocName的字符串,用于我們核對是否打開那個文件的文件名,然后我們利用Set myWd = GetObject(, "WORD.Application")語句捕獲是否有word打開的主程序,如果有,我們將提取每個文件的文件名,用于我們的判斷。下面看具體的講解:
① WordIsOpen = False 首先令WordIsOpen初始值為FALSE
② On Error Resume Next 是建立一個錯誤處理語句,這個語句是當(dāng)沒有word文件打開時以便對后續(xù)錯誤進行處理
③ For Each doc In myWd.Documents
UU = UCase(doc.FullName)
If UU = strDocName Then
WordIsOpen = True
Exit For
End If
Next
上述語句是一個遍歷的循環(huán),如果打開的文件中含有名稱為給出的文件名的文件,那么返回的將是WordIsOpen = True。
(待續(xù))
備注:本節(jié)代碼參考文件“001 工作表.xlsm”
我20多年的VBA實踐經(jīng)驗,全部濃縮在下面的各個教程中,教程學(xué)習(xí)順序:
文章來源:http://www.zghlxwxcb.cn/news/detail-726671.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-726671.html
到了這里,關(guān)于第四節(jié)(1):EXCEL中判斷一個WORD文件是否被打開的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!