#660 ボタンでズームボックスを表示させるには? フォーム、VBA

Accessでは、フォームに限らず、テキストボックスなどの入力欄で「Shift+F2」のショートカットキー操作を行うことで、ズームボックスを表示させることができます。ズームボックスではその欄のデータを大きな画面で編集することができます。特に、データシートのように1行の高さが限られた画面で長いあるいは改行を含んだテキストの編集を行う際に便利な画面です。


このズームボックスはプログラムから表示させることもできます。キー操作ではなく、ボタンをマウスでクリックすることで表示させるといった機能を持たせたいときに使えます。

次の例では、フォームの[備考編集]ボタンのクリックによって、サブフォーム内の「備考」欄の内容をズームボックス表示しています。

Private Sub cmd備考編集_Click()
'[備考編集]ボタンクリック時

  'サブフォームの備考欄をズームボックス表示
  With Me!frm受注_sub
    .SetFocus
    !備考.SetFocus
    DoCmd.RunCommand acCmdZoomBox
  End With

End Sub

ここでは、ボタンの名前は「cmd備考編集」、サブフォームの名前は「frm受注_sub」、備考欄のコントロールの名前は「備考」としています。
また、ズームボックスの表示自体は「DoCmd.RunCommand acCmdZoomBox」の命令だけで可能ですが、DoCmdのRunCommandメソッドは手動による操作と同じ動きをさせる必要があるため、事前にサブフォーム → 備考欄の順にフォーカスを移動させたうえでその命令を実行させるようにしています。


実行例:
  1. ボタンのクリック前の状態

  2. ボタンをクリックしてズームボックスで備考を入力

  3. ズームボックスで[OK]をクリックした後
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved