之前在智圖這個網站上做了一張地圖,在嵌入 PPT 里面的時候碰到了一些問題,現在把找到的解決方法寫下來。
PPT 里面自帶的 WebBrowser 控件可以實現網頁瀏覽的功能。在“開發工具”選項卡下的“其他控件”中找到“Microsoft Web Browser”,在畫布中拖動以調整大小。
如果是 PowerPoint 2013 及以上版本,會彈出如下對話框:
這是因為從 PowerPoint 2013 開始,出于安全考慮,默認不能使用 WebBrowser 控件1。 可以通過修改注冊表來解決,具體為:
修改 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\Common\COM Compatibility\{8856F961-340A-11D0-A96B-00C04FD705A2}
中 Compatibility Flags
的鍵值為 0.
這是 Office 2016 該鍵在我電腦上的位置,不同的電腦和版本可能有所不同。
因為 WebBrower 控件支持直接輸入網址,所以還需要借助其他控件來完成網頁瀏覽的功能。2這里選用命令按鈕。
拖動鼠標畫出合適大小,然后右鍵單擊,選擇查看代碼。
在彈出的窗口中輸入如下代碼3:
Private Sub CommandButton1_Click()Dim varURL As StringvarURL = "https://media.geoq.cn/media/share/pc.html?appid=012386e6-af1b-47f6-adab-b76fbaf6967e"Slide1.WebBrowser1.Navigate varURL
End Sub
其中的網址指向準備嵌入的地圖:北京市地質災害點分布圖
再把 Caption 改為“地圖”后退出該窗口。
在播放幻燈片時單擊該按鈕即可展示網頁。一般的網頁這樣操作是沒有問題的,不過 WebBrower 控件默認使用 IE7 進行網頁渲染,和最新的網頁技術不兼容4。對有些網頁無法進行瀏覽,或者展現效果不好,譬如本次要展示的網頁。
解決方法還是通過修改注冊表,具體為:
在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
5里新建一個鍵
Name | Type | Data |
---|---|---|
POWERPNT.EXE | DEG_DWORD | 0x00002af9(11001) |
需要注意的是在添加的時候程序名稱需要寫為
POWERPNT.EXE
而不是POWERPOINT.EXE
。
再次播放 PPT,單擊按鈕后出現理想效果。
參考資料
- Cannot insert certain scriptable ActiveX controls into Office 2013 documents ?
- How to use the WebBrowser control on a slide ?
- Web Browser Control & Specifying the IE Version ?
- A Brief Guide to FEATURE_BROWSER_EMULATION ?