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

エクセルのドロップダウンリストをドロップサイドにしたいのですが、それは可能でしょうか?

A 回答 (3件)

こういうのはどうでしょうか。


シートにリストボックスを1つ貼り付け
Public x As Range
Private Sub ListBox1_Click()
x = ListBox1.List(ListBox1.ListIndex)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set x = Target
ListBox1.Top = Target.Offset(-1, 1).Top
ListBox1.Left = Target.Left + Target.Width
End Sub
別途、リストボックスのListFillRangeとしてK1:K5(例)とかプロパティで設定してください(VBAでもできますが)。
    • good
    • 0

う~ん・・・それらしいものが無いか、コントロールを探してみたのですが、無料のコントロールでそれらしいものは私では見つけられませんでした。



で、自前で作成する場合にはと・・・調べたのですが、
Visual Studio
で、コントロールを作成できるみたいです。
WndProc メソッドを書き換えリストボックスの出現位置を操作してますので興味があれば、作成してみてください。
(MSDNの作成についてのHPをURLに貼り付けておきますが・・・)

って・・・VBAで確かめてみたんですが、こっちではメソッドの書き換えが出来ないみたいですね;;

参考URL:http://www.microsoft.com/japan/msdn/net/winforms …
    • good
    • 0

申し訳ありません。



「ドロップサイド」って、どういうコントロールなのでしょうか?

入力規制等一般機能で使われている、ドロップダウンリストを「ドロップサイド」と言うコントロールに変更する事は、恐らく不可能だと思います。

VBAでActiveXコントロールとして使うのであれば可能だと思いますが・・・。

この回答への補足

勝手に言葉を作ってしまいました。すみません。
下部にではなく右側に語句が並べたいです。

補足日時:2005/11/18 14:55
    • good
    • 0

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