Excel VBA質問箱 IV

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

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


32 / 13163 ツリー ←次へ | 前へ→

【79925】Sendkeysで制御文字と全角文字が送れない 山田 18/5/26(土) 16:41 質問[未読]

【79942】Re:Sendkeysで制御文字と全角文字が送れない 山田 18/5/30(水) 23:11 お礼[未読]
【79944】Re:Sendkeysで制御文字と全角文字が送れない 亀マスター 18/5/31(木) 18:57 回答[未読]
【79951】Re:Sendkeysで制御文字と全角文字が送れない 山田 18/6/4(月) 20:55 お礼[未読]
【79954】Re:Sendkeysで制御文字と全角文字が送れない 亀マスター 18/6/4(月) 22:30 発言[未読]
【79960】Re:Sendkeysで制御文字と全角文字が送れない 山田 18/6/5(火) 19:29 お礼[未読]

【79942】Re:Sendkeysで制御文字と全角文字が送れ...
お礼  山田  - 18/5/30(水) 23:11 -

引用なし
パスワード
   返信ありがとうございます。

メモ帳には貼り付けできています。
アプリケーションに貼り付けのショートカットキーがあるかどうかはわかっていません。
ないかもしれません。


複数のテキストボックスがあり、1つに入力を終えるとTABキーを押して次のテキストボックスに移って入力をしています。
それと同じことしたくて、TABキーを送ろうとしています。


言葉がたらずすいません。

【79944】Re:Sendkeysで制御文字と全角文字が送れ...
回答  亀マスター  - 18/5/31(木) 18:57 -

引用なし
パスワード
   貼り付けができませんか…。
ショートカットキーでの貼り付け以外でだと、右クリックメニューからの貼り付けなどどうでしょうか。
右クリックメニューはShift+F10で出せますので、これを送った後、括弧書きで書かれている貼り付けに対応するキーを押すということで。
例えば、メモ帳だと右クリックすると「貼り付け(P)」と表示されるかと思いますが、この「P」を入力することで貼り付けができます。それをSendKeysで再現しようというわけです。
対象のアプリケーションで入力中に右クリックをしてみて、どのキーが貼り付けに対応しているかを確認してみてください。

Tabに関してはちょっと対応方法が思いつかないですが、Tabの前に他のキーを連続して押していませんか?SendKeysは連続で使うとアプリケーション側が反応する前に次のキーを送信してしまうことがあるので、試しにひとつのキーを送信する度にSleepか何かで時間を空けてみてはどうでしょう。

あと、VBAのSendKeysではなく、ShellスクリプトのSendKeysも試してみてはどうでしょうか。VBAではうまくいかなくても、Shellならうまくいくということもあるようです。ShellのSendKeysは
With CreateObject("Wscript.Shell")
  .SendKeys "A"
End With
のような感じで使えます。

【79951】Re:Sendkeysで制御文字と全角文字が送れ...
お礼  山田  - 18/6/4(月) 20:55 -

引用なし
パスワード
   右クリックメニューに貼り付けがありますが、グレーアウトしていて選択できないようになっていました。

With CreateObject("Wscript.Shell")で
{TAB}単独、{ENTER}単独で送ってみましたが無反応でした。

【79954】Re:Sendkeysで制御文字と全角文字が送れ...
発言  亀マスター  - 18/6/4(月) 22:30 -

引用なし
パスワード
   うーむ…ちょっとお手上げかもです。
右クリックメニューで貼り付けがグレーアウトしているということは、あなたが使おうとしている環境では貼り付け操作が禁止されているということですかね…。(一応、貼り付けられるものがクリップボードにない場合もグレーアウトする可能性がありますので、メモ帳などで適当なものをコピーしてから右クリックメニューを開くというのも確認してみてください)。

一応、SendKeysで全角文字を送る際、入力対象となるテキストボックスなりにフォーカスが当たってないと失敗するそうなので、明示的にフォーカスを当ててから実行するとか。(Officeソフト以外のアプリケーションでフォーカスを当てる方法は知らないので、自力でお願いします)
ht tp://madia.world.coocan.jp/vb/vb_bbs2/200301/200301_03010008.html

あと、これも私は使ったことがありませんが、SendMessageやPostMessageという関数もあるようです。

【79960】Re:Sendkeysで制御文字と全角文字が送れ...
お礼  山田  - 18/6/5(火) 19:29 -

引用なし
パスワード
   色々とありがとうございました。
Sendmessageを試してみます。

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