Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2195 / 2272 ツリー ←次へ | 前へ→

【3466】CurrentRecordの使い方を教えてほしいのですがお願いします。 なお 04/9/9(木) 14:08 質問[未読]
【3473】Re:CurrentRecordの使い方を教えてほしいの... クロ 04/9/9(木) 15:19 回答[未読]
【3476】レコードが移動出来るようにしたいのですが なお 04/9/9(木) 16:02 質問[未読]
【3477】Re:レコードが移動出来るようにしたいのです... クロ 04/9/9(木) 16:17 回答[未読]
【3479】すいません なお 04/9/9(木) 17:41 質問[未読]
【3480】Re:すいません クロ 04/9/9(木) 17:50 回答[未読]
【3482】欠番が・・・・・ なお 04/9/9(木) 23:47 質問[未読]
【3483】Re:欠番が・・・・・ クロ 04/9/10(金) 8:12 回答[未読]
【3511】出来ました!!。 なお 04/9/15(水) 12:50 お礼[未読]

【3466】CurrentRecordの使い方を教えてほしいので...
質問  なお  - 04/9/9(木) 14:08 -

引用なし
パスワード
   一覧Aフォーム と 詳細Bフォーム と言う二つのフォームを作って
一覧Aフォームにコマンドボタンを作ってそれを押すとリスト内の個々レコードNOをかくとくし詳細Bフォーム
を開くようにしたいのですが、

※CurrentRecordの使い方を教えてほしいのですがお願いします。

  DoCmd.OpenForm "詳細Bフォーム", acNormal
  Forms!一覧Aフォーム = frm.CurrentRecord


こんな感じで考えたのですがうまくいきません。

すいません

【3473】Re:CurrentRecordの使い方を教えてほしい...
回答  クロ  - 04/9/9(木) 15:19 -

引用なし
パスワード
   CurrentRecordはレコードそのものの識別には使えないと思います。
現在表示されているレコードが何番目か返すので、フィルタなどがかかっていると
1を返すレコードがかわってきます。
ということは送った先のレコードナンバーとイコールではなくなります。

IDのような「個体識別」できるもので行った方がいいと思います。

簡単なのは一覧AフォームのIDテキストボックスのダブルクリック時の
イベントに
DoCmd.OpenForm "詳細Bフォーム", acNormal, ,"[ID]=" & Me.ID
とするのが簡単だと思うのですがどうでしょうか?

【3476】レコードが移動出来るようにしたいのですが
質問  なお  - 04/9/9(木) 16:02 -

引用なし
パスワード
   個体識別のようにIDで指定すると、
指定したフォームしか表示できないようになると思うのですが・・・・

私がやりたいのは指定したフォームを開いてその後レコードが移動できるようにしたいのですが・

 例:5番目のフォームを開いた後6・7・8・・・・とレコードが移動出来るようにしたいのですが

【3477】Re:レコードが移動出来るようにしたいので...
回答  クロ  - 04/9/9(木) 16:17 -

引用なし
パスワード
   DoCmd.OpenForm "詳細Bフォーム", , , , , , Me.ID

として詳細Bフォームの開くときのイベントに

DoCmd.GoToRecord , , acGoTo, OpenArgs

ではどうでしょうか?

Me.IDをMe.CurrentRecordとして一覧Aフォームをフィルタ/並べ替えして
試してみては?

【3479】すいません
質問  なお  - 04/9/9(木) 17:41 -

引用なし
パスワード
   すいません
このようにコードを書けばいいのでしょうか?


DoCmd.OpenForm "詳細Bフォーム", acNormal, "", "[ID]=[Forms]![一覧Aフォーム]![ID]", , acNormal

DoCmd.GoToRecord , , acGoTo, OpenArgs


すいません
勉強不足で・・・・・

【3480】Re:すいません
回答  クロ  - 04/9/9(木) 17:50 -

引用なし
パスワード
   ▼なお さん:
>すいません
>このようにコードを書けばいいのでしょうか?
>
>
>DoCmd.OpenForm "詳細Bフォーム", acNormal, "", "[ID]=[Forms]![一覧Aフォーム]![ID]", , acNormal
>
>DoCmd.GoToRecord , , acGoTo, OpenArgs
>
>
>すいません
>勉強不足で・・・・・

一覧Aフォームに「ID」というテキストボックスがありますね。
そこのダブルクリック時のイベントに

DoCmd.OpenForm "詳細Bフォーム", , , , , , Me.ID

と書くかコピペしてください。OpenArgsを利用して一覧Aフォームの「ID」を
詳細Bフォームに送ります。

こちらは↓は詳細Bフォームの開くときのイベントに書いてください。

DoCmd.GoToRecord , , acGoTo, OpenArgs

こちらではそのIDを受け取ってレコードを移動します。

【3482】欠番が・・・・・
質問  なお  - 04/9/9(木) 23:47 -

引用なし
パスワード
   出来ました!!

ただ、レコード数とIDナンバーが同じ時は良いのですが、
IDに欠番が出来てIDとレコード数が違うときは無理でしょうか?

【3483】Re:欠番が・・・・・
回答  クロ  - 04/9/10(金) 8:12 -

引用なし
パスワード
   詳細Bフォームの開くときのイベントを以下に変更してください。

Me.ID.SetFocus
DoCmd.FindRecord OpenArgs, acEntire, , acDown, , acCurrent

【3511】出来ました!!。
お礼  なお  - 04/9/15(水) 12:50 -

引用なし
パスワード
   ありがとうございます。
返事が送れてすいません。

思った用に私のやりたいことが出来ました。
本当に感謝しています。
動いた時は、やった!って感じでした。
いろいろ最後まで付き合ってくれてありがとうございます。

2195 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078299
(SS)C-BOARD v3.8 is Free