設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

返回列表 發(fā)新帖
查看: 6012|回復: 4
打印 上一主題 下一主題

[Access本身] 雙擊OLE字段關(guān)聯(lián)應用程序打開文件出錯

[復制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2013-4-21 16:10:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
雙擊OLE字段,系統(tǒng)自動關(guān)聯(lián)相關(guān)程序打開所保存的文件,問題本來很簡單,可是,ACCESS似乎對WORD、EXCEL甚至是PDF等“近親”文檔特別關(guān)照,可以在窗體控件內(nèi)直接顯示內(nèi)容的方式顯示,這個時候,雙擊OLE控件,變成了是在控件內(nèi)顯示文檔,而不是在關(guān)聯(lián)程序內(nèi)顯示文檔了。
其他的,各種圖片文件、TXT文件,其他還有什么我不知道,只測試發(fā)現(xiàn)了這幾類,都歸為“包裝程序外殼對象”。仍然可以正常關(guān)聯(lián)打開。

對WORD文檔等,在OLE控件中雙擊不能關(guān)聯(lián)打開的問題,
解決方法一:保存文件時,就應選擇“顯示為圖標”,或在控件屬性中設(shè)置“顯示類型”為圖標。
解決方法二(不成熟):
   Me.附件.Action = acOLEActivate      '為操作(如編輯)打開 OLE 對象。
   Me.附件.Verb = acOLEVerbOpen     '操作模式,在單獨的應用程序窗口中打開對象。

結(jié)果發(fā)現(xiàn),不管“附件”控件中所存為何種文件類型,acOLEActivate 的值都是7,acOLEVerbOpen的值都是-2,打開WORD類文件是可以了,但對Package類(包裝程序外殼對象)又出問題了。
彈出如下窗口:

如果將 Me.附件.Verb 的值設(shè)為-1或1,就可以打開Package類文件了,但WORD類文件又打不開了。煩!
我想“Me.附件.Verb“的值是否對應右鍵菜單中的命令序?
那如何用VBA代碼識別OLE控件中的對象類別?,如果能識別就可以直接分別賦值解決吧?

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 分享淘帖 訂閱訂閱

點擊這里給我發(fā)消息

2#
發(fā)表于 2013-4-22 08:58:59 | 只看該作者
我測試了一下,在窗體上插入的ole對象都可以雙擊打開,有的會彈出一個警告對話框,點打開或運行就可以了
3#
 樓主| 發(fā)表于 2013-4-22 18:25:05 | 只看該作者
t小寶 發(fā)表于 2013-4-22 08:58
我測試了一下,在窗體上插入的ole對象都可以雙擊打開,有的會彈出一個警告對話框,點打開或運行就可以了

1、窗體(非數(shù)據(jù)表窗體)上的OLE控件的“顯示類型”要設(shè)置為“內(nèi)容”。
2、插入的對象要選擇WORD DOC文檔來測試。
3、插入OLE文件的對話窗中,去掉“顯示為圖標”的勾記。

請問版主是按這樣測試的嗎?只有這種情況下不能雙擊打開,其他情況都是可以雙擊打開的,我只是尋求一種萬全的解決方法。

點擊這里給我發(fā)消息

4#
發(fā)表于 2013-4-22 22:18:11 | 只看該作者
我明白你的意思了,以下是用VBA代碼判斷OLE字段中的內(nèi)容是否是包對象。

If InStr(StrConv(LeftB(Me.附件.Value, 52), vbUnicode), "Package") > 0 Then
    MsgBox "OLE字段內(nèi)容是包對象。"
End If
5#
 樓主| 發(fā)表于 2013-4-22 23:26:05 | 只看該作者
t小寶 發(fā)表于 2013-4-22 22:18
我明白你的意思了,以下是用VBA代碼判斷OLE字段中的內(nèi)容是否是包對象。

If InStr(StrConv(LeftB(Me.附件 ...

可以了,非常感謝。
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2024-10-23 10:22 , Processed in 0.108350 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表