![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 A9 ![]()
![]() |
1.目的: 用VBA 擷取網頁資料,解析Json, 錄入 ACCESS 2.環境: Win7(64bit) 繁體旗艦版 SP1, Office 2010(64bit) 繁體 3.目前狀況: (1)已用Vba從網站順利擷取網頁資料 為 json 格式 (2)用一副程式 A170_DS() 欲解析 Json 格式, 程式片段如下 (3)執行到 Set X2 = CreateObject("MSScriptControl.ScriptControl") 出現錯誤訊息: 執行階段錯誤 429 Active X 元件無法產生物件 (4)前年 同樣程式, 我在 WinXP(32Bit) 和 Office 2007(32bit) 下,執行正常,無任何錯誤碼發生 4.做過的研究: (1)上網查過10數篇討論, 初步結果出在 Msscript.ocx 是為32位元所寫的dll, 在64bit環境下, 無法正常運作 (主要是 office2010 64bit) (2)有要我用 Regsvr32.exe c:\windows\SysWOW64\Msscript.ocx 重新註冊 Msscript 元件, 順利註冊完成, 但錯誤依舊... (3)還有一些奇奇怪怪方法 ...,還是無法解決問題 5.請問 有人在 64bit Win /office 64bit 下,順利運行過MSScriptControl 元件嗎?? 當然是可以退回office 32bit,確保程式運作正常; 聽說新一代開發系統的環境,已經放棄不再使用ActiveX, Dll方式來運作,科技總是往前突破, 請問在64bit環境下,是用什麼來代替 MSScriptControl的運作?? 感謝指點........
搜尋相關Tags的文章:
[ CreateObject ] , [ ScriptControl ] , [ Msscript.ocx ] , [ 64 bit ] ,
本篇文章發表於2016-06-23 02:09 |
1樓
不錯的參考
羅伯斯 ![]() |
32bit 版本的 Msscript.ocx ,當然不能直接在 64bit 正常運作
請參考以下的連結修改註冊表,試試看 http://blog.csdn.net/Humourer/article/details/51669916 或 http://www.lxway.net/561284406.html
本篇文章回覆於2016-06-23 08:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓 |
請問你是要處理 Script 嗎
Private Sub Command1_Click() Dim x Set x = CreateObject("MSScriptControl.ScriptControl") x.Language = "VBScript" x.ExecuteStatement "MsgBox ""Hello World!""" End Sub 我電腦 64bit Win /office 32bit 上面執行是這正常
本篇文章回覆於2016-06-23 09:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓
作者回應
A9 ![]() |
感謝一樓 羅伯斯 回復,
試過你所提第一個方法, 沒有成功, 我猜想 不在於 註冊表的問題, Win 64 是可以透過 註冊32程式 執行 32的程式 但 office 64 (Access/VBA ) 無法利用 32 的程式 在 64環境下 達到想要的連結或運作 你提的第二個方法 是 MScomm32.ocx 而我需要的是 Msscript.ocx, 這方法先前已經試過了,失敗 我還是將 MScomm32.ocx 下載, 放入 c:\windows\SysWOW64\ 內,做一次 Regsvr32.exe c:\windows\SysWOW64\mscomm32.ocx 並重新開機, 結果還是 如先前預料 錯誤依舊 炙忱感謝 羅伯斯 熱心協助與回復, 因為有你的參與, 世界更美好!
本篇文章回覆於2016-06-23 12:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
A9 ![]() |
感謝二樓 MSDOS 回復. 謝謝您寶貴的經驗分享,
如問題 3-(4)項所言,的確是在 office 32下 可以正常運行, 我現在有點後悔當時 為何要更新office 32bit 到 office 64bit 了. 只是 64bit office 已經出來 好幾年, 這問題應該有解決方法才是 想問一下 1.有沒有新版 64位元的Msscript.ocx 元件? 2.有人在 64bit Win /office 64bit 下,順利運行過 CreateObject("MSScriptControl.ScriptControl") 嗎? 附帶一提, Win 32 下 , 應該無法正常執行 office 64 吧 !
本篇文章回覆於2016-06-23 12:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
http://originaldll.com/file/msscript.ocx/7705.html
這網站的你先試看看 我沒試過
本篇文章回覆於2016-06-23 13:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
最有價值解答
MSDOS ![]() ![]() |
Json 格式 解析 也可以自己做
可以查一下歐 ^_^
本篇文章回覆於2016-06-24 20:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓
作者回應
A9 ![]() |
感謝大家!
最後 我放棄 要在 office 64bit 上使用 CreateObject("MSScriptControl.ScriptControl") 來解析 Json 依照 6樓 MSDOS 大哥的建議 , 自已 用 Split(...) 解析 Json. 效果還不錯 不用在一棵樹上吊死 ... 哈哈! 再次感謝 所有 幫忙與關注 這個問題 的 前輩 和 高手! 感恩啦!
本篇文章回覆於2018-05-26 14:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
A9 ![]() |
https://blog.csdn.net/dengnihuilaiwpl/article/details/72639705
不錯的方法! 建議試試看!
本篇文章回覆於2020-02-28 16:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |