• ベストアンサー

エクセルのデータ入力規制をつかってドロップダウン入力を設定した場合

エクセルのデータ入力規制をつかってドロップダウン入力を設定した場合 ドロップダウン入力がアクティブになった時に自動でドロップダウン一覧が下に出るように出来ますか。 現在は下向き▼をマウスでクリックしないとリストが出てきません。 マウスを使わずにキーボードの上下ボタンで入力したいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.3

マクロの回答がないようなので。。。   簡単には、セルがアクティブになったらそのセルに、 Altキーと↓キーをセットで送ってやればいいでしょう。 Sendkyesメソッドで送れます。    ●リスト形式の入力規則が、  Sheet1の A1~A5 と C1~C3 にセットしてあると仮定。   ●下記コードを次のようにしてSheet1のシートモジュールにコピペ。  Sheet1のシートタブを右クリック > コードの表示  表示されるVBE画面のコードウィンドウ(白い部分)にコピペして  VBE画面を閉じる    (最重要)  コピペする前にVBE画面のタイトルバーに  Sheet1と表示されてることを必ず確認すること。   '--------Sheet1のシートモジュール--------------  Private Sub Worksheet_SelectionChange(ByVal Target As Range)  If Target.Count > 1 Then Exit Sub  Dim myAdrs As String  myAdrs = "A1:A5,C1:C3"   '●入力規則セル  If Not Intersect(Target, Range(myAdrs)) Is Nothing Then     Application.SendKeys "%{DOWN}"  End If End Sub '-------------------------------------------   これでA1:A5,C1:C3のセルがアクティブになったら ドロップダウンリストが表示されます。    また、リスト形式入力規則のセルが変更になったら 例えば、セルF5 がひとつ増えたら    myAdrs = "A1:A5,C1:C3,F5"   とします。 --------------------------------------------   ●実務で(他の人も)使う場合はより汎用的なコードにするべきですが、 今回は、こんなふうにしてもできますよ、という参考程度ということで。。   以上です。   

homma
質問者

お礼

回答ありがとうございます。 マクロは便利で考え方一つで思い通りのことができて大変楽しいですね。 教えていただきましたマクロを有効に使わせていただきます。 ありがとうございました。

その他の回答 (2)

noname#164823
noname#164823
回答No.2

そのセルをアクティブにして、Alt+↓ で開きます。 あとは、カーソルキーで選択しエンターキーで確定できますが。

homma
質問者

補足

回答ありがとうございます。 Altキーをつかってマウスを使わずに表示できるのですね。 出来ればセルがアクティブになった時に自動でプルダウンが出るようになればベストなのですが。 ご存知でしたら教えてください。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

マクロを使えば出来ますが、お勧めしません。 ▼をマウスでクリックしないとリストが出て来ない方が使いやすいのでは。 アクティブになった時に自動でドロップダウン一覧が下に出るようになるとエクセル自体の編集が出来にくいのでは。

homma
質問者

補足

回答ありがとうございます。 マクロを使えば実現できるということですが面倒でなければマクロの設定方法を教えてください。

関連するQ&A