また また また、ダメでした、、と連絡をいただく(涙)(涙)(涙)
>テキストボックスにカーソルが存在するのではなく、
>テキストボックス以外の場所でマウスが動いたことで送信されるようです。
>
>わたしの力ではVBAでマウスの動きを感知させる手段が思いつきません・・・
・XXXXXさんへ Aタグ リンクの文字を探して押す - 三流君 ken3のmemo置き場
・XXXXXさんへ IE操作で DoEventを入れたり処理待ちを入れてみては? - 三流君 ken3のmemo置き場
・XXXXXさんへ IE操作 .Focus で フォーカスがセットできると思います。 - 三流君 ken3のmemo置き場
の 流れ、続きです。(※完璧に避けられているなぁ、嫌われたかな(笑))
カーソル移動のAPI
>わたしの力ではVBAでマウスの動きを感知させる手段が思いつきません・・・
いつもの私もわからなくって、、で逃げる
表に出ないパターン失敗なんだけど
※成功結果しか表に出していないから?↓なんでもできるように期待されるけど...実は...
XXXXXさんへ 4/1だけど 三流君の真実は... - 三流君 ken3のmemo置き場 を参照
そんな話は置いといて、(↑今回もたまたま見つかったから成功記事にしただけかなぁ...)
マウスカーソル 位置 指定 などで検索すると
http://msdn.microsoft.com/ja-jp/library/cc411029.aspx
など、
SetCursorPos
が見つかります。
スバリのVBA サンプルがほしかったので、
VBA SetCursorPos で 検索すると
http://homepage1.nifty.com/MADIA/vb/API/SetCursorPos.htm
などサンプルが多数見つかるので、そのままテストで使ってみます。
テストしたコード
Option Explicit '標準モジュール 頭で忘れずに 使用するAPIの定義を入れてね。 'マウス関係 Declare Function SetCursorPos Lib "USER32" (ByVal x As Long, ByVal y As Long) As Long 'XをセルC2から、YをC3から取り出し マウスカーソルを移動させてみる 'VBA SetCursorPos で 検索 ' http://homepage1.nifty.com/MADIA/vb/API/SetCursorPos.htm を参考にしてみました。 Sub test_XY() Dim x As Long, y As Long x = Range("c2") 'セルから代入 y = Range("c3") Dim Ret As Long Ret = SetCursorPos(x, y) '単純にAPIを呼んだだけです。 End Sub
テスト結果
いつもの解説とテスト結果 : http://www.youtube.com/watch?v=xioP-Zv6fUI
www.youtube.com
終わりの挨拶
もっと、APIも勉強しないとなぁ・・・と思いつつ失礼します。
三流プログラマー Ken3
PS.自動操作 よけ なので、カーソルを移動させたくらいじゃ、またまた避けられそうな予感もするけど。
※※嫌われても、しつこく、手を変え品を変えてアタックかなぁ(ぉぃぉぃ)