- ベストアンサー
Access2013 帳票フォーム、1行で改行
こんにちは Access2013を利用して 帳票フォームを作成しました。 1行入力すると、改行されて(表示がみえなくなり)次の新レコード入力となります。 PageUPボタンやスクロールバーを利用して1行目を表示する事はできるのですが 詳細セクションには充分なスペースがあるにもかかわらずこのような動作となります。 レコードソースにフィルターはかけずに全て表示させております。 どなたかご教授ください。どうぞよろしくお願いいたします。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
[バグ] エラートラップを抜かしていました。 Public Sub GoToNewRecord(ByVal intRowMax As Integer) On Error Resume Next Dim I As Integer Dim J As Integer DoCmd.GoToRecord , , acLast J = intRowMax - 1 For I = 1 To J DoCmd.GoToRecord , , acPrevious Next I DoCmd.GoToRecord , , acNewRec End Sub
その他の回答 (7)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
追加:新規レコードが表示される他の例。 Private Sub コマンド1_Click() DoCmd.OpenForm "T3", acNormal DoCmd.GoToRecord acDataForm, "T3", acNewRec End Sub このような方法でフォームを開いてもなります。この場合も、先と同じ要領で表示を変えることができます。具体的には、開く時ではなくてフォームがロードされた時に新行への移動を指示します。 Option Compare Database Option Explicit Const 詳細部行数 = 20 Private Sub Form_Load() GoToNewRecord 詳細部行数 Me.Field1.SetFocus End Sub Public Sub GoToNewRecord(ByVal intRowMax As Integer) Dim I As Integer Dim J As Integer DoCmd.GoToRecord , , acLast J = intRowMax - 1 For I = 1 To J DoCmd.GoToRecord , , acPrevious Next I DoCmd.GoToRecord , , acNewRec End Sub
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
・新しいデータを入力する。 ・ヘッダー部、フッター部を更新する。 ・新行への移動を指示する。 仮に、このような事情で新行への移動を指示しているのであれば、そのやり方を工夫することで<新行しか表示されない>という現象を変えることが出来ます。以下は、そのサンプルコードです。 Option Compare Database Option Explicit Const 詳細部行数 = 20 Private Sub コマンド_新規追加_Click() GoToNewRecord Me.Field1.SetFocus End Sub Public Sub GoToNewRecord() Dim I As Integer Dim J As Integer DoCmd.GoToRecord , , acLast J = 詳細部行数 - 1 For I = 1 To J DoCmd.GoToRecord , , acPrevious Next I DoCmd.GoToRecord , , acNewRec End Sub
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
>新しいレコードを入力する際には前行はまったくみえません。 Private Sub コマンド_新規追加_Click() SendKeys "^({+})", True End Sub 例えば、新規レコードの追加を指示すると同様の現象がでます。 そのことを踏まえると、 1、プロパティで同様の設定をしている。 2、VBAで同様の指示をしている。 確か、そういうコマンドもあったかと思います。
- hatena1989
- ベストアンサー率87% (378/433)
回答No.1のものです。 帳票フォームというのを見落として、ピントはずれの回答してしてしまってすみません。 新規行に移動したときに、新規行1行しか表示されないという現象ですね。 当方のAccess2013でのシンプルなサンプルでは現象が再現できませんでした。 新規に帳票フォームを作成しても再現しますか。 必ず再現できる条件というが提示できればこちらでも検証することができるですが。 フォームにイベントモジュールとかマクロとか設定していませんか。
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
補足:添付図No.2
補足
参考に画像をリンクさせて頂きます。 デザイン時 http://www.fastpic.jp/images.php?file=3632704208.jpg 新しいレコードを入力する際には、前行はまったくみえません。 http://www.fastpic.jp/images.php?file=0939546670.jpg PageUPで1行目を表示させた状態 http://www.fastpic.jp/images.php?file=3411333643.jpg
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
- hatena1989
- ベストアンサー率87% (378/433)
複数レコードを同時に表示したいということが希望のことでしょうか。 フォームをデザインビューで開いて、「既定のビュー」プロパティが「単票フォーム」になっていたら「帳票フォーム」に変更してください。
お礼
fa_007さん 丁寧な解説本当にありがとうございます。 私の環境も特殊なのかと思います。Access2013をアンイストールして2003で稼働させると問題は発生しましせんでした。 この問題については一旦、終了させて頂きます。 ありがとうございました。