|
▼Massan さん:
こんばんは。
>ワークシートのメニューバーに、フォントの色を変更するパレットが
>ありますが、あのパレットをユーザーフォームに流用する方法など
>ないでしょうか。
>また、流用できる場合、そこで選択した色のインデックスはどのように
>取得するのでしょうか。
私は、ちゃんとしたもの作成する場合は
http://www.loadsystem.net/api/lsapi3.txt
このあたりのAPIをそっくりそのまま使用します(CHOOSECOLOR)
でも、取り合えず色の取得が出来ればいいや!!
というときは、
ユーザーフォーム(Userform1)にコマンドボタン(Commandbutton1)
をひとつ配置してください
当該フォームのモジュールに
Private Sub CommandButton1_Click()
Dim cl As Long
If get_color(Range("a1"), cl) = True Then
CommandButton1.BackColor = cl
End If
End Sub
Function get_color(rng As Range, cl As Long) As Boolean
Dim ans As Boolean
rng.Parent.Parent.Activate
rng.Parent.Activate
rng.Select
get_color = Application.Dialogs(xlDialogPatterns).Show
If get_color = True Then
cl = rng.Interior.Color
rng.Interior.ColorIndex = xlNone
End If
End Function
ボタンをクリックすると色指定のダイアログが表示されます(見出しが違うのは
ご愛嬌)
色を指定してOKボタンでその色がCommandbutton1に反映します。
試してみてください
|
|