プロが教える店舗&オフィスのセキュリティ対策術

vba で f1 キーを押すと、特定のシート
をアクティブにする方法を教えてください。

動きは、f1 を 押すと
sheet 2 へ 移り
そこで、更に f1を押すと 
Sheet 1 へ 戻る

質問者からの補足コメント

  • Private Sub Workbook_Open()

    Application.OnKey "{F1}", "F1_TEST"

    End Sub

    Private Sub F1_TEST()

    If ActiveSheet Is workseets("過去購買履歴").Name Then
    workseets("WORK1").Activate
    Else
    workseets("過去購買履歴").Activate
    End If

    End Sub

    で実行しましたが、

    以下のメッセージが出ます。
    参照設定等何か対処ができていないんでしょうか?

    「vba で f1 キーを押すと、特定のシ」の補足画像1
      補足日時:2021/01/16 13:21
  • よろずやさん

    その後、メッセージの原因わかり、
    教えていただいた内容で上手く処理が
    できました。

    ありがとうございました。
    まだまだ、初心者で助かりました。

      補足日時:2021/01/17 08:57

A 回答 (2件)

ThisWorkbookモジュールに下記を。



Private Sub Workbook_Open()
Application.OnKey "{F1}", "F1_TEST"
End Sub

標準モジュールに下記を。

Private Sub F1_TEST()
If ActiveSheet Is Sheet1 Then
Sheet2.Activate
Else
Sheet1.Activate
End If
End Sub
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
やってみます。

お礼日時:2021/01/15 22:33

ユーザーフォーム使って、sendkeyでやる方法しか思いつかん。

    • good
    • 0
この回答へのお礼

回答ありがとうございました。
やってみます。

お礼日時:2021/01/15 22:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!