• ベストアンサー

基本ですがVBA教えてください。

access2000を使っています。Aというフォームにボタンをつくり、Bというフォームを開きたいと思っています。Bというフォームは、単票式でつくってあり、[社員ID][社員名][グループ名]となっております。 このとき、Aのフォームの【高木さん】というボタンを押すと、Bのフォームの高木さんのページが開くようにしたいです。どうやってコードを書いていいのかわかりません。。。教えてください。

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

  • ベストアンサー
  • yoisho
  • ベストアンサー率64% (331/516)
回答No.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)
回答No.1

Bと言うフォームを開きたいだけなら Aフォームのボタンのイベントのクリック時で...ボタンを押してコードビルダを選ぶか、コンボボックスでイベントプロシージャを選んでから...ボタンを押すとVisualBasicEditerが開き、ボタンに対するクリックイベントのプロシージャの部分にカーソルが移動します。 そこにコードを書くとボタンを押したときにそのVBAが動きます。 docmd.openform "b" でbと言う名前のフォームが開きます。 VisualBasicEditerでHelpを開くとVBAのHelpが引けます。 質問タブでopenformを検索すれば、イロイロなモードでの開き方や抽出条件設定の方法が書いてあります。 ご参照下さい。

nani-o
質問者

お礼

ありがとうございます。helpもどれを引いていいかすら、まだホントショボチンなので、皆さんのアドバイス助かります!常にhelpと戦っていく気はありますので、ただ、厳しくなりましたらまたご質問しますので、お答えよろしくお願いします。 nani-oという名前どっかに覚えておいて頂ければ幸いです。ありがとうございました。

関連するQ&A