任意のコントロールにツールチップを追加する
  フォーム上のコントロールに、ツールチップを追加・変更する関数を作成し
ます。
  ツールチップを表示するためには、コントロールのControlTipTextを使用し
ます。

● サンプル ●

  汎用関数ですので、標準プロシージャに以下のコードを記述して下さい。

'【引数説明】
'FromName   :ツールチップを追加するコントロールの親フォーム名
'CtlName    :ツールチップを追加するコントロール名
'TipText    :追加するツールチップの本文
Public Function AddToolTip(FormName As String, _
                           CtlName  As String, _
                           TipText  As String)

    On Error GoTo Func_Err:

    Dim Frm As Form     'フォームオブジェクト
    Dim Ctl As Control  'コントロールオブジェクト

    'フォームとコントロールオブジェクトの取得
    Set Frm = Forms(FormName)
    Set Ctl = Frm.Controls(CtlName)

    'コントロールにツールチップを設定
    Ctl.ControlTipText = TipText

    '終了処理
    Func_Exit:
        Set Ctl = Nothing
        Set Frm = Nothing
        Exit Function

    'エラートラップ
    Func_Err:
        MsgBox "Error Number : " & Err.Number & vbCrLf & Err.Description
        GoTo Func_Exit:
End Function


● 動作確認 ●

  新規フォーム[フォーム1]を作成し、コマンドボタン[Command1]を配置します。
  そしてフォームのコマンドボタンクリック時イベントに、以下のプロシージャ
を記述します。

'プロシージャレベルの変数宣言
Dim intClickCount

Private Sub Command1_Click()
    Me.Command1.ControlTipText = "コマンドボタンが" & intClickCount & _
                                 "回" & vbCrLf & "クリックされました"
    intClickCount = intClickCount + 1
End Sub

  これで、コマンドボタンを押した回数がツールチップとして表示されるよう
になります。
  また、上記のようにツールチップ内に改行を含めることも可能です。
  この関数を応用すれば、データの有無や状態、フォームの各プロパティの状
態などによって、動的にツールチップを変化させることが出来ます。

Access97/2000



戻る


Excel Word Access VBA! モーグ