
Access97でサブフォームを使用したフォームを作成しています。
サブフォームの明細行の最後に新規レコード行がありますよね。
サブフォームの初期表示時に、この新規レコード行にカーソルを位置付けたいのですが、
Docmd.GoTORecord,,acNewREc とやると、新規レコード行がサブフォームの
最上部にいってしまい、その前にある既存レコードが見えなくなってしまいます。
理想は、サブフォームの1ページが10明細分の大きさで獲ってあるとすると、
新規レコード行を10行目に表示されるようにもっていきたいのですが、
サブフォームに対してこのような制御は可能なのでしょうか。
RecordCountを操作したりしてやってみたのですが、既存レコードの件数によって、
うまくいったりいかなかったりです。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
私も同じことで悩んだことがあります。
そのときの結論ですが、(1) 一番簡単なのは、
サブフォームのビューをデータシートにすれば新規レコードに移動しても10行表示されます。
(2) サブフォームのビューをを帳票にする必要があるなら、
DoCmd.GoToRecord , , acLast
DoCmd.GoToRecord , , acPrevious, 9
DoCmd.GoToRecord , , acNewRec
のように、一度9行前のレコードに行ってから、新規レコードに移動すれば、ちゃんと10行表示されます。
(なんだか裏技っぽくてスマートじゃないんで、自分では納得できてないんですが・・・)
(3) 最後の9レコードより前を表示する必要が無ければ、
サブフォームのクエリーを
SELECT ID, フィールド1, フィールド2,・・・・
FROM テーブル1
WHERE ID In (SELECT TOP 7 ID FROM テーブル1 ORDER BY ID DESC;)
ORDER BY ID;
のようにして、レコード数を新規も含めて10に限定してしまうのも一つの方法かと思います。
とりあえず (2) で用が足りるということでは、自信あり(経験済み)ですが、この方法がベストか? ということではちょっと自信なしです。
お返事ありがとうございます。
実は、私も不本意ながら、(2)にやや近い方法で実験していたのですが、
あともう少しというところでうまくいかなかったりでした。
で、yoishoさんのいわれたようにやってみたところ、うまくいきました。
ちょっと1回余分にレコード移動しているので、
画面のチラツキが気になるところですが、しょうがないですね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスでフォームビューがみ...
-
Accessでのデータ消滅に...
-
新規レコード行を非表示にしたい
-
アクセスのフォームで立ち上げ...
-
Accessで上の行を自動でコピー...
-
Access サブフォームにフィルタ...
-
レコードを保存するコード ア...
-
Accessで新しいレコードに規定...
-
Accessで一件の新規レコードの...
-
フィルタ後のフォームの件数の...
-
ACCESSフォームのリストボック...
-
異なるフォームに属する関数間...
-
ACCESS「ンボ ボックスで選択し...
-
ACCESS起動時に所定フォームを...
-
Access レポート印刷するときに...
-
MA ACCESSデータベースに詳しい...
-
ACCESSのレポートで、指定した...
-
データベースのINT型項目にNULL...
-
ACCESS──メインフォームでサブ...
-
Access(office)のマクロの「値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコードを保存するコード ア...
-
新規レコード行を非表示にしたい
-
アクセスでフォームビューがみ...
-
アクセスの自動保存解除はでき...
-
AccessVBA RecordSourceのリセ...
-
ACCESSフォームのリストボック...
-
アクセス:フォーム入力で、最...
-
レコード削除時に(サブ)フォー...
-
Access:フォームプロパティ「...
-
レコードをダブルクリックする...
-
アクセス データの競合を非表...
-
Accessでフォーム上に 直前の...
-
Accessでレコードの保存をせず...
-
フィルタ後のフォームの件数の...
-
ACCESSでフォームを使って、テ...
-
ACCESS起動時に所定フォームを...
-
Accessで上の行を自動でコピー...
-
Access レコード移動時イベント...
-
Accessでのデータ消滅に...
-
Accessでチェックボックスで抽...
おすすめ情報