こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

accessのVBAでフォームの開き方について

連休に入り確認が遅くなり申し訳ございません。
タブのあるフォーム1で例えば選択メニューからAボタンをクリックで
 フォーム1のページ3を開いた状態でOPEN。
Bボタンをクリックした場合はフォーム1のページ5を開いた状態でOPENする
ようにしたいのですが。

投稿日時 - 2019-05-05 13:22:50

QNo.9613793

困ってます

質問者が選んだベストアンサー

前回どのようなボックスのイベントからでもフォームを開くことが可能と言いましたが
添付のオプショングループのイベントでも開けます。
枠内のオプションボタンにそれぞれ1番からの連番が割り振られ、選ばれたボタンの値が
オプショングループ値になります。

(1)メニューFormにオプショングルーを「マスタ登録」として配置し
(2)マスタ登録のフォーム(タグ付)を作成し
(3)メニューForm
 VBAで
Private Sub マスタ登録_BeforeUpdate(Cancel As Integer)
DoCmd.OpenForm "マスタ登録"
End Sub
(4)マスタ登録Form
 VBAで
Private Sub Form_Load()
Select Case Forms!メニュー!マスタ登録
Case 1: ページ1.PageIndex = 0
Case 2: ページ2.PageIndex = 0
Case 3: ページ3.PageIndex = 0
Case 4: ページ4.PageIndex = 0
Case 5: ページ5.PageIndex = 0
End Select
End Sub

投稿日時 - 2019-05-05 19:46:21

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

追伸
事前に条件確定してからフォームを開く仕掛けご理解頂けましたか
この仕掛けは大量の情報を処理するには欠かせないです。
※エクセルでは年度ごとのBookに月毎の12のSheetsと年計表の
 13Sheetsで処理しますね
Accessではこの条件を確定するフォーム【メニュー】に
検索条件のボックスを配置する事で一つAccessファイルで可能です。
通常 クエリ、ホーム、レポートは
 日、月、年度、品名、仕入先、得意先 等の検索条件で開きます。

最後に今後のお役になればと私の仕掛けを提示します。
メニューFormの役割
(1)ファイルを開いたとき最初に開くファイル
 ファイル→オプション→現在のデータベース→フォームの表示→メニューOK
(2)レコードソースをプロフィールテーブルとする
 ※プロフィールテーブル添付参照(追加禁止の1レコードのみ)
  下枠は上枠の基準日のプロパティで
  規定値=Date()はExcelのtoday()関数
(3)クエリ、ホーム、レポート等のモジュールを開くボックスを配置
(4)検索条件ッボックッスを配置

投稿日時 - 2019-05-06 12:08:48

ANo.1

>?開く場面とはどのようなものですか、
★フォームを開く前にどのページを開くかが決めておかなければなりません
 そのフォームを[メニュー]としたのが回答No.
 ボタンはテキストボックッス、コマンドボックス、ラベルボックッス
 何でもよいのですが、コンポボックスが良いです
>タブのあるフォーム1で例えば選択メニューからAボタンをクリックで
 フォーム1のページ3を開いた状態でOPEN。
 Bボタンをクリックした場合はフォーム1のページ5を開いた状態でOPENする
★このボタンをタブフォームのあるフォームに配置して開いて
 、ボタンを選んでも後の祭り
★タグフォームのプロパティーに、添付のように[表題]と[名前]がありますが
 タグには表題が表示されますが標題が空白の時は名前が表示されます。
 [表題]と[名前]いずれも変更可能です
 これだけで充分と思いますが

投稿日時 - 2019-05-05 15:23:41

あなたにオススメの質問