掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ObjectFromLresultの使い方をお教えください (ID:102357)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
K.J.K様お付き合いくださって本当にありがとうございます。 アドバイスに従い以下のようなコードを組みましたが、うまく取れませんでした。 Option Explicit Public Const OBJID_NATIVEOM = &HFFFFFFF0 Private Declare Function AccessibleObjectFromWindow Lib "oleacc" _ (ByVal hWnd As Long, ByVal dwId As Long, _ riid As Any, ppvObject As Any) As Long Public Declare Function FindWindowEx Lib "user32" _ Alias "FindWindowExA" _ (ByVal hwndParent As Long, ByVal hwndChildAfter As Long, _ ByVal lpszClass As String, ByVal lpszWindow As String) As Long Public Type GUID Data1 As Long Data2 As Integer Data3 As Integer Data4(0 To 7) As Byte End Type Sub test4() Dim oAccessible As IAccessible Dim IID_IAccessible As GUID Dim hwndApp As Long Dim hwndClient As Long Dim hwndBook As Long Dim lngResult As Long Dim lngRtnCode As Long Dim strMsg As String With IID_IAccessible .Data1 = &H618736E0 .Data2 = &H3C3D .Data3 = &H11CF .Data4(0) = &H81 .Data4(1) = &HC .Data4(2) = &H0 .Data4(3) = &HAA .Data4(4) = &H0 .Data4(5) = &H38 .Data4(6) = &H9B .Data4(7) = &H71 End With hwndApp = FindWindowEx(0, hwndApp, "XLMAIN", vbNullString) hwndClient = FindWindowEx(hwndApp, 0, "XLDESK", vbNullString) hwndBook = FindWindowEx(hwndClient, 0, "EXCEL7", vbNullString) AccessibleObjectFromWindow hwndBook, OBJID_NATIVEOM, _ IID_IAccessible, oAccessible If Not oAccessible Is Nothing Then strMsg = "確認できたよ " & oAccessible.Caption & vbTab 'OK Else strMsg = strMsg & "駄目でした" End If MsgBox strMsg End Sub ものによってはIID_IAccessibleを引き渡すとうまくいくので、取る対象によってIdispatchを引き渡したり、Iaccessibleを引き渡したり選ばないといけないということなのでしょうか。msdnを見る限りどちらでもよさそうですが、なにか法則があると理解しました。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.