- ベストアンサー
任意の文字をキーで自動入力させるには?
エクセルを使って文字の入力をしています. リストから選ぶ方法も考えたのですが,その都度クリックしてリストから選ぶよりも,キーを1つ押すことで自動的に入力をしたいと思います. ファンクションキーなどに任意の文字を割り当てるような方法を考えているのですが,そのような方法はありますでしょうか? 例えば・・・ A,B,Cを入力する場合 F9→A,F10→B,F11→C といった方法です. どなたかご存じの方,教えてください.
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは(^^) マクロを作成すれば、「Ctrl」+「アルファベット」のショートカットキーを割り当てることは可能だと思うのですが、 一つのキーだけに割り当てることはできないのではないかと思います。 入力を手早くしたいのであれば、リストの選択は、「Alt」+「↓」でできますよ。 (「Alt」+「↓」でリストがダウン。「↓」でリスト内を移動し、「Enter」で確定。) どんな入力をされているのかわかりませんが、 (>例えば… の例だと、そのまま、A,B,Cを押してもよい(CapsLockをオンで)のでは??) あとは、マクロとコマンドボタンを作成し、コマンドボタンを押すと入力できるようにするとか。 この方法だと、リストをクリックで選択するよりは、クリックの回数が1回ですみます。
その他の回答 (2)
- KenKen_SP
- ベストアンサー率62% (785/1258)
こんばんは。 VBA 標準モジュールに下記コードを貼り付け、 マクロ「ShortCutKeysASign」を実行し、F9 などを押してみて下さい。 元に戻すには、マクロ「ShortCutKeysRestore」を実行します。 ご参考までに。 ' // ファンクションキーに引数付きプロシージャを割当 Sub ShortCutKeysASign() Application.OnKey "{F9}", "'TestProc ""A""'" Application.OnKey "{F10}", "'TestProc ""B""'" Application.OnKey "{F11}", "'TestProc ""C""'" End Sub ' // ファンクションキーを元に戻す Sub ShortCutKeysRestore() Application.OnKey "{F9}" Application.OnKey "{F10}" Application.OnKey "{F11}" End Sub ' // ファンクションキーで呼び出されるプロシージャ Sub TestProc(ByVal s As String) ActiveCell.Value = s End Sub
お礼
回答ありがとうございました. 以前の方法はファンクションだったとのコトでしたが・・・ 新たに作り直すので,マクロを中心に考えてみたいと思います.
- Cupper
- ベストアンサー率32% (2123/6444)
ファンクションキーに文字を割り当てることはできません。 どのような事に使用しているのか分かりませんが、文字列を入力するのであれば、 ・入力した任意の記号をマクロで文字列に変換させる ・単語登録してIMEに変換させる ・クリップボードに登録しておき、そこから選択する などの代用方法もありますが駄目ですか。
お礼
回答ありがとうございました. マクロを使った方法がうまくいきそうですね.勉強してみます.
お礼
回答ありがとうございました. A,B,Cは仮定の文字です.本当は別の文字が入ります. マクロとコマンドボタンをよく調べてみます.