| 
    
     |  | ▼ichinose さん: >▼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に反映します。
 >試してみてください
 ichinoseさん
 色々とお知恵を頂きありがとうございます。
 APIも試させていただこうと思います。
 
 |  |