0

これが可能かどうかはわかりません。私はExcelで作業しており、VBスクリプトを使用しています。2 つのキーが同時に押されているかどうか、またどのキーが押されているかを検出する方法はありますか? 次に、それらのキーが押された場合、If/Then ステートメントを使用して、必要なプロセスを実行できますか?

コンボボックスのようなものがあれば、キーダウン機能を使用して押された単一のキーを検出できますが、これは 1 つのキーでのみ機能し、2 つのキーでは機能しません。また、コンボ ボックスやテキスト ボックスなども使用していません。私は厳密にセルを使用しているため、単一のキーが押されたことを検出するためのキーダウンのようなものはないようです。

繰り返しますが、同時に押された 2 つのキーを検出する必要があります。また、いくつかのワークシートがあり、これらの押されたキーがシート間で機能するようにするため、個々のワークシートごとではなく、ワークブック レベルでもこれを検出できるようにしたいと考えています。

これが可能かどうか教えてください。しかし、私は不可能だと感じています。

4

1 に答える 1

2

ダグ、

あなたの提案をありがとう、私はそのためにすべてを理解しました。他の誰かがこれが役に立つと思った場合に備えて、ここにあります:

    プライベート サブ Workbook_Activate()

    ワークブックがアクティブな場合、標準の Ctrl + C の代わりにスクリプトが実行されます。
    Application.onkey "^{c}", "ThisWorkbook.cCopy"

    サブ終了


    プライベート サブ Workbook_Deactivate()

    '別のワークブックがアクティブな場合、このスクリプトが無効になるため、標準の Ctrl + C が再び機能します。
    Application.onkey "^{c}"

    サブ終了


    サブ cCopy()

    'これはアクティブ時に実行するスクリプトです。これは、テスト目的でのみ使用されました。   
    Worksheets("Sites").Range("I1").Value2 = "はい"

    サブ終了
于 2013-11-05T10:43:12.220 に答える