掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VBからExcelを起動している最中にDoEventsをするには? (ID:127137)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
みなさん、色々とありがとうございました。 なんとかSHELL関数で、実行することができました。 EXCELのパスについては、下記のコードで実施できました。 Function getExcelPath() As String Dim hKey As Long Dim RetVal As Long Dim sProgId As String Dim sCLSID As String Dim sPath As String sProgId = "Excel.Application" 'First, get the clsid from the progid 'from the registry key: 'HKEY_LOCAL_MACHINE\Software\Classes\<PROGID>\CLSID RetVal = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\Classes\" & _ sProgId & "\CLSID", 0&, KEY_ALL_ACCESS, hKey) If RetVal = 0 Then Dim n As Long RetVal = RegQueryValueEx(hKey, "", 0&, REG_SZ, "", n) sCLSID = Space(n) RetVal = RegQueryValueEx(hKey, "", 0&, REG_SZ, sCLSID, n) sCLSID = Left(sCLSID, n - 1) 'drop null-terminator RegCloseKey hKey End If 'Now that we have the CLSID, locate the server path at 'HKEY_LOCAL_MACHINE\Software\Classes\CLSID\ ' {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx}\LocalServer32 RetVal = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _ "Software\Classes\CLSID\" & sCLSID & "\LocalServer32", 0&, _ KEY_ALL_ACCESS, hKey) If RetVal = 0 Then RetVal = RegQueryValueEx(hKey, "", 0&, REG_SZ, "", n) sPath = Space(n) RetVal = RegQueryValueEx(hKey, "", 0&, REG_SZ, sPath, n) sPath = Left(sPath, n - 1) getExcelPath = sPath RegCloseKey hKey End If End Function こいつで拾ってきたパスをshellでキックして、 実行することができました。 ほんと、みなさん。ありがとうございました。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.