[[20210122114948]] 『SendKeysについて』(qwerty) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『SendKeysについて』(qwerty)

VBAで他のアプリケーションを開き、
情報をエクスポートして閉じることが目標です。

具体的な操作としては
Enter、→、→、Enter、→、Enter、F2、Tab*5、Enter、Enter、Alt+F4、Enter
です

アプリケーションを開くことはできたのですが、
Sendkeysで操作しようとすると、どのキーを指定してもF8を押下してしまいます。

        With CreateObject("Shell.Application")
            .shellexecute "外部アプリのパス"
            .SendKeys "~"

        End With

考えられる原因はございますでしょうか。
それとも、他に方法がございますでしょうか。

知恵をお貸しください。

< 使用 Excel:Excel2019、使用 OS:Windows10 >


外部アプリ起動後、表示完了するのを待っていないので、同時進行でキーだけ先に送っているのではないですかね? 少し待ってから送ってみてください。

10秒待つ例。

 Private Sub CommandButton1_Click()
    Dim iEd As Long

    CreateObject("Shell.Application").ShellExecute "Book1.xlsx"
    iEd = Timer + 10
    While Timer < iEd
        DoEvents
    Wend

    SendKeys "{ENTER}"
    SendKeys "{RIGHT}"
    SendKeys "{RIGHT}"
    SendKeys "{ENTER}"
    SendKeys "{F2}"
    SendKeys "TEST"
    SendKeys "%{F4}"
    SendKeys "{ENTER}"
 End Sub
(Excekブックを例にしているので、後半のキーは違ってます)
(???) 2021/01/23(土) 00:39

???様

求めた結果を得ることができました。

ステップ実行で、数秒あけてゆっくり行っても同様のエラーでしたので
関係ないのかと思っていました…
なんでも試してみるものですね。

本当にありがとうございました!
(qwerty) 2021/01/25(月) 08:13


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.