Access (一般機能)

Accessの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 8.1 Pro : Microsoft 365)
フォームヘッダーのボタンを常に見えるようにしたい
投稿日時: 22/03/09 19:05:09
投稿者: jimusyo

お世話になります。
 
 フォームを作成し、フォームヘッダー、フッターを表示させております。
 
 フォームフッターには、コマンドボタンを数個設置しております。
 
 フォームが1画面に収まらない為、水平・垂直のスクロールバーを「はい」
 としているのですが、垂直方向への移動は常にフォームフッターのボタンが
 見えているので問題ないのですが、
 水平時(右側)に移動した時、左側のボタンが当然?のように見えなくなりますが、
 水平にスクロールした場合でも、常にボタンを表示させておく方法はございますでしょうか。
 
 方法が無ければボタンを小さくし、なんとか工夫しなくてはと思っております。
 
よろしくお願い致します。

回答
投稿日時: 22/03/10 08:12:02
投稿者: よろずや

ACCESSの横スクロールなんて見たことないっす。
 
タブコントロールをお試しください。

回答
投稿日時: 22/03/10 09:37:22
投稿者: Suzu

初めの内は、ボタンが多くなりがちです。
タブコントロール/ページ を使ったり
メインメニューフォーム から、サブメニューフォーム を呼び出す様にしたらどうでしょう。
 
 
VBA を使えるなら、ボタンの代わりに リストボックス に メニューを表示し、
リストをダブルクリックした時に 動作をさせる事で、メニューフォーム とするテクニックがあります。
 
概略
 リストボックスには、テーブル/クエリ を指定し
  ID、 メニュー名 、動作 (動作の 中身はF_○○/ R_××/fnc_△△ など)
   ID でメニューの表示順番、メニュー名 を 表示
   動作 を 非表示 カラムとして持たせ
  (リストボックスのColumnCount プロパティ を 2にすれば コントロールに「動作」は表示されませんが
    Coloumn(2) とすれば、動作 の中身は取得できます)
 
 リストボックスのダブルクリック時に、Coloumn(2) の値を参照。
  その 値を元に
     頭に、
      F_が付いていたら フォームを開く
      R_が付いていたら レポートを開く
      fnc_が付いていたら Eval(リストボックス.Coloumn(2)) の様にし、プロシージャを呼び出す
 
画面が増えた時に、メニュー画面に、ボタンを配置しなくとも
リストボックスの 値集合ソースのテーブル に
メニュー内容と フォーム名を追加すれば良いのでメンテナンスが楽

投稿日時: 22/03/10 14:01:53
投稿者: jimusyo

よろずや様
Suzu様
 
 ご回答いただき、ありがとうございました。
 
> ACCESSの横スクロールなんて見たことないっす。 
 
 そうなんですか・・・
 
> VBA を使えるなら、ボタンの代わりに リストボックス に メニューを表示し、
> リストをダブルクリックした時に 動作をさせる事で、メニューフォーム とするテクニックがありま
> す。
 
 すみません。VBAいまいちです。
 
今回はサブフォームを使う方向で逃げようと思います。
 
ありがとうございました。