Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


15614 / 76734 ←次へ | 前へ→

【66595】Re:検索中の文字列を取得したい
発言  Abyss  - 10/9/13(月) 14:08 -

引用なし
パスワード
      ↓
「検索ダイアログに入力されている文字列の取得」の
場合なら、以下のような方法でいいと思います。

(サンプル) * 環境がないので、Excel2007ではテストしていません。

Declare Function FindWindowExA Lib "User32" _
 (ByVal h1 As Long, ByVal h2 As Long, _
  ByVal sz1 As String, ByVal sz2 As String) As Long
 
Declare Function GetWindowTextA Lib "User32" _
 (ByVal Hwnd As Long, _
  ByVal lpString As String, _
  ByVal nMaxCount As Long) As Long
 
Declare Function SendMessageA Lib "User32" _
 (ByVal Hwnd As Long, _
  ByVal uMsg As Long, _
  ByVal wParam As Long, _
  ByVal lParam As Long) As Long
 
Const WM_CLOSE& = 16

Sub Test()

 Dim buf As String
 Dim hDlg&, h&, i&
 Const n$ = vbNullString
 
 buf = String$(30, vbNullChar)
 
 CommandBars.FindControl(, 1849).Execute
 hDlg = FindWindowExA(0, 0, n, "検索と置換")
 h = FindWindowExA(hDlg, 0, n, n)
 i = GetWindowTextA(h, buf, 30)
 SendMessageA hDlg, WM_CLOSE, 0, 0
 MsgBox Left$(buf, i)
 
End Sub

1 hits

【66563】検索中の文字列を取得したい toshiki 10/9/10(金) 21:52 質問
【66564】Re:検索中の文字列を取得したい かみちゃん 10/9/10(金) 21:58 発言
【66591】Re:検索中の文字列を取得したい toshiki 10/9/13(月) 6:38 発言
【66595】Re:検索中の文字列を取得したい Abyss 10/9/13(月) 14:08 発言
【66600】Re:検索中の文字列を取得したい toshiki 10/9/13(月) 16:56 お礼
【66565】Re:検索中の文字列を取得したい kanabun 10/9/10(金) 23:53 発言

15614 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free