Accessフォームのボタンから別フォームを開く方法

 

アクセス担当のまみです。

 

フォームを自分で作成して、別のフォームが開いたりしたら感動しませんか?

 

時々どうやっても思うとおりに動いてくれなくて、大きな壁が立ちはだかっているかのように、いつ抜けられるんだろう?ってこともあるんです・・・

調べまくってもいい解決策が見つけられなかったりとかして・・・

 

そんな時は、いったん休憩。

 

思っている通りではなくても、別の方法を組み合わせてみたりして、何とか動くようにしています。

 

あっ最初からそんなに難しいことはやらないのでご心配なく。

というよりも、私が悩んで調べまくったことを、まとめて順番にわかりやすくご紹介しています!

今回は、フォームから別フォームを開く方法をお伝えしますね。

フォームから別フォームを開く

 

説明のために「宛名印刷」ファイルを使用します。同じファイルを使用する方が理解しやすいのでお時間ありましたら、下記の記事から作成してみてください。

 

アクセスVBAでフォームにボタンを配置しよう

2018年9月18日

 

それでは、「宛名印刷」ファイルを開きましょう。

 
 
「F_メインメニュー」フォームから「F_データ入力」フォームが開くようにしていきましょう。

 

まずは「F_メインメニュー」フォームをデザインビューで開きましょう。

 

 

①「btn入力」を選択した状態で、プロパティーシートの②「イベント」タブを左クリックします。

 

③クリック時の、右側のを左クリックして、を左クリックするとコードの画面が開きます。

 

(はてな君)
プロパティシートが表示されてないんだけど!どうしたらいい?

 

(あいちゃん)
自分で間違って閉じてしまったり、なぜだか表示されていない時があったりするんです。でも大丈夫ちゃんと表示できます!

 

 

リボンの「デザイン」タブを選択して「プロパティシート」を左クリックするとちゃんと表示されます。

 
 

 

(あいちゃん)
何か問題が発生しても慌てないで、落ち着いて!ちゃんと対処法はありますよ!

 

 

 

無事、コード表が表示されましたでしょうか?

「btn入力」を左クリックしたときの処理を入力していきましょう。

 

「Private Sub btn入力_Click()」と「End Sub」の間に、下記のコードを入力します。

 

    DoCmd.OpenForm "F_データ入力"
    DoCmd.Close acForm, Me.Name

 

コードをコピーされたい場合は下記の記事を参考にしてください。

関連記事

 

 

 

「DoCmd.Close acForm, Me.Name」は自分自身のフォームを閉じる って意味のコードです。

 
「DoCmd.OpenForm “F_データ入力”」のコードが、「F_データ入力」フォームを開いてね って意味のコードになります。
 
 
“F_データ入力”の部分を別のフォームに変えると、別のフォームが開きます。って「F_メインメニュー」と「F_データ入力」の2つのフォームしかないので、別のフォームの指定はできないですね。

 

「フォームビュー」で確かめてみましょう!
 
 

 
 
 
(はてな君)
「データ入力」を左クリック!!したら「データ入力」フォームが開いた!感動する~!

 

 

 

保存のメッセージは「はい」を左クリックで閉じておきましょう。

 

どうでしょう?

「F_メインメニュー」フォームの「データ入力」を左クリックで、「F_メインメニュー」フォームは閉じられ、「F_データ入力」フォームが開きました。

 

突然ですが、ここで、次回までの宿題を出したいと思います。

今までの記事の中に答えはありますので、ぜひ取り組んでみてください。

 

 

次回までの宿題
データ入力フォームに「F_メインメニュー」フォームに戻れるボタンを作ってみてください。
ボタンの位置はお任せします。ボタンの標題、名前は「メインメニューへ」、「btnメニュー」で作成してください。

 

 

まとめ

 

今回は、宿題を出してみました。

この問題が解けたら、「F_メインメニュー」フォームから「F_データ入力」フォームが開き、そして、「F_データ入力」から「F_メインメニュー」が開くようになります。

「F_メインメニュー」の「終了」ボタンでそのまま終了できますね。

 

スポンサーリンク