- ベストアンサー
基本ですがVBA教えてください。
access2000を使っています。Aというフォームにボタンをつくり、Bというフォームを開きたいと思っています。Bというフォームは、単票式でつくってあり、[社員ID][社員名][グループ名]となっております。 このとき、Aのフォームの【高木さん】というボタンを押すと、Bのフォームの高木さんのページが開くようにしたいです。どうやってコードを書いていいのかわかりません。。。教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Aフォームの「高木さん」コマンドのクリック時イベントに、以下のコードを記述してください。 Private Sub 高木さんコマンド_Click() '引数 OpenArgs を「高木さんの社員ID」として、Bフォームを開く DoCmd.OpenForm FormName:="Bフォーム名", OpenArgs:=高木さんの社員ID End Sub 次に、Bフォームの読み込み時イベントに、以下のコードを記述してください。 Private Sub Form_Load() '社員ID のテキストボックスへフォーカスを移す Me![社員ID のテキストボックス名].SetFocus '高木さんの社員ID のレコードへ移動 DoCmd.FindRecord OpenArgs End Sub HELP で、OpenForm メソッド、OpenArgs プロパティ、Load イベント、FindRecord メソッド を確認してみてください。
その他の回答 (1)
- Te-Sho
- ベストアンサー率52% (247/472)
Bと言うフォームを開きたいだけなら Aフォームのボタンのイベントのクリック時で...ボタンを押してコードビルダを選ぶか、コンボボックスでイベントプロシージャを選んでから...ボタンを押すとVisualBasicEditerが開き、ボタンに対するクリックイベントのプロシージャの部分にカーソルが移動します。 そこにコードを書くとボタンを押したときにそのVBAが動きます。 docmd.openform "b" でbと言う名前のフォームが開きます。 VisualBasicEditerでHelpを開くとVBAのHelpが引けます。 質問タブでopenformを検索すれば、イロイロなモードでの開き方や抽出条件設定の方法が書いてあります。 ご参照下さい。
お礼
ありがとうございます。helpもどれを引いていいかすら、まだホントショボチンなので、皆さんのアドバイス助かります!常にhelpと戦っていく気はありますので、ただ、厳しくなりましたらまたご質問しますので、お答えよろしくお願いします。 nani-oという名前どっかに覚えておいて頂ければ幸いです。ありがとうございました。