- ベストアンサー
Access2013 帳票フォーム、1行で改行
こんにちは Access2013を利用して 帳票フォームを作成しました。 1行入力すると、改行されて(表示がみえなくなり)次の新レコード入力となります。 PageUPボタンやスクロールバーを利用して1行目を表示する事はできるのですが 詳細セクションには充分なスペースがあるにもかかわらずこのような動作となります。 レコードソースにフィルターはかけずに全て表示させております。 どなたかご教授ください。どうぞよろしくお願いいたします。
- koifun
- お礼率21% (3/14)
- その他(データベース)
- 回答数8
- ありがとう数11
- みんなの回答 (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)
1,帳票フォームを作成. 2,1行入力すると表示がみえなくなる. 3,詳細セクションには充分なスペースがある. 字義通りに解釈すれば・・・。 そのような現象は、添付図のような場合に発生します。 原因=詳細セクションが不必要に広いためです。
お礼
お返事ありがとうございます。 説明が下手くそで申し訳ありません。 >3,詳細セクションには充分なスペースがある 詳細セクションではなく、フォーム全体の大きさに充分なおさきさがあります。 デザイン上では詳細は1行のみで おっしゃるようにしております。
- hatena1989
- ベストアンサー率87% (378/433)
複数レコードを同時に表示したいということが希望のことでしょうか。 フォームをデザインビューで開いて、「既定のビュー」プロパティが「単票フォーム」になっていたら「帳票フォーム」に変更してください。
関連するQ&A
- 単票フォームと帳票フォームを連動 アクセス
どういう構成にすればいいか教えてください。 元データはT_testのみですが T_testを元に、単票フォームと帳票フォームを作り、 この二つのフォームをサブフォームにし、1つの親フォームにはめて、 帳票フォームのレコードをクリックする(カレントレコードが変わる)度に 単票フォームは、帳票フォームのデータを表示させたいのですが どうすればいいでしょう? レコードソースは親フォームに設定すればいいのでしょうか? それとも単票フォームと帳票フォームそれぞれにT_testを設定すればいいでしょうか? 帳票フォームのレコードをクリックして単票フォームのデータを表示させる際は、 帳票フォームの値を取得して単票フォームにフィルタをかければいいのでしょうか?
- ベストアンサー
- オフィス系ソフト
- Accessのフォーム画面について
宜しく御願いします。 アクセスでフォームの入力画面を作ったのですが項目が多く、モニタに全部表示し切れません。スクロールバーで上げ下げすればよいのですが、マウスのホイールあるいはある一定の縦幅を持たせて画面を動かして(下方向)入力しやすいようにしたいのですが可能でしょうか。 また、帳票形式の表をフィルターをかけて複数ページに分けたフォームを作りましたがページを開けたとき、常にスクロールの先頭に表示させることも設定できるでしょうか。 教えてください。
- 締切済み
- その他(データベース)
- 新規レコード行を非表示にしたい
帳票形式で入力フォームを作成しています。 登録No(○○~△△)を入れると、入力レコード数(○○~△△)が制限されるようにしました。でも、フォーム上には新規レコード行が表示されていて邪魔なんです。新規レコードインジケータ(*表示)という奴です。 ユーザーが入力する際、紛らわしいので、新規レコード行ごと消したいのですが、そんなことできるのでしょうか? お知恵をお貸し下さい! ちなみに、環境はAccess2002で、クエリをレコードソースにしてフォームを作成しています。
- ベストアンサー
- オフィス系ソフト
- Access 帳票フォームでカレント行だけ色反転させれますか?
いつもここのサイトにはお世話になっています。 今回もよろしくお願いします。 Access2002と VBAを使用して、マスターテーブルのメンテナンスの画面を作成しています。 1フォームの構成は上部に入力欄があり、 下部にサブフォームで帳票フォーム形式でテーブルが表示してあります。 下部のテーブルでレコードをクリックすると、上部の入力欄にクリックした部分のレコード(サブフォームのカレント行)内容を表示し、上部の入力欄にてデータの変更/更新を行います。 みなさんに教えていただきたいのは、 下部のサブフォーム部分でクリックした際に、クリックしたレコードの部分だけ色反転させるなどして「目立たせたい」のですが、VBAなどで色の指定を変更しても、サブフォーム全体の色が変わってしまいます。 なんとかして、1目で「カレント行」と「それ以外」とわかるようにする方法はないでしょうか? 補足説明はしますのでなんなりと申し付けてください。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- ACCESS2000の帳票フォームでテキストボックスの入力値を取得したい
こんにちは。ACCESS2000でツールを作成しています。 テーブルはExcelにリンクさせ、クエリを介して帳票フォームで データを表示しています。 帳票フォームのレコード毎にテキストボックスを追加して それぞれ入力できるようにし、その値をVBAで取得したいのですが どうすればよいでしょうか。 テキストボックスを追加して実行すると、一つのテキストボックスに 入力した値が全てのレコードに反映されているようです。 帳票フォームのしくみがよく分かりません。 どなたか教えていただけないでしょうか。 宜しくお願いします。
- 締切済み
- オフィス系ソフト
- 帳票から単票フォームへの表示がうまくいきません
ACCESSを始めたばかりです。 帳票表示されているレコードを単票フォームで表示させたいです。 テーブル「売上データ」がありこのテーブルを使って帳票用と単票用のクエリを作成、それぞれに対してフォームを作っています。 「売上データ」には、オートナンバーで No があり、これを主キーにしてあります。 クエリ Q帳票 フォーム F帳票 クエリ Q単票 フォーム F単票 フォームF帳票には、レコード内にボタンをおきました。 ボタンには、下記のマクロをつくって イベント クリック時 のところにいれました。 マクロ フォームを開く フォーム名 :F単票 ビュー :フォームビュー フィルタ名 : Where条件式 :[No]=[Forms]![F帳票]![No] データモード: ウィンドウモード:ダイアログ フォームF帳票 で、検索窓を作って検索した一覧の中から単票表示したいレコードのボタンをクリックして単票フォームをダイアログで開かせたいです。 上記のようにやってみたのですが、単票フォームは開くもののデータは空白になってしまいます。 ちなみに、作ったマクロを実行してみると Forms!F帳票!No とパラメータの入力を求められるので適当な数字をいれるとその数字に該当した単票フォームが開きます。 WEBで探して同じような感じで作ってみたのですがうまくいきません。 どこが間違っているのでしょうか? ちなみにクエリ Q単票 の Noの抽出条件に[Forms]![F帳票]![No]をいれてみたりもしましたがうまくいきませんでした(空白で単票が開く) 何卒よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- Access2.0でフォームのイベントについて
お世話になっております。 ムカーシのAccess2.0システムを改造しなくてはならず、当時の文献を読みあさっています。 Access2.0でフォーム中に一覧表という形で、「詳細」セクションへある数件のレコードを縦並び、スクロールバーで表示させているのですが、これをある条件下で、詳細ごとに、詳細セクション中のコントロールを表示・非表示したいと考えてます。(もっといえば、詳細セクションの高さもそれに併せて調整したく思ってます。) で、問題になるのはイベントだろうと思うのですが、そういったイベントが見あたらないのです。 もしかして、機能的にそうなっていないのでは・・・などおもったりするのですが・・・ どうか、お力添えをお願いします。
- ベストアンサー
- その他(データベース)
- Accessフォームのスクロールバーに関して
こんにちは。Access2000を使用しています。 今回、データ照会用フォームを作成しようと思い、 タブコントロールの中にリストボックスを配置し、 条件に応じてそのリストボックスの値集合ソース (値集合ソースはクエリを使用し抽出条件として このフォームのテキストボックスに入力した値を使用) を変更してみました。 そのこと自体うまく言ったのですが、リストボックス につきものと思われるスクロールバーがでてきません。 (表示しきれない最後のレコードは途中で切られてみる ことができません。) どなたかスクロールバーを表示させていただけません でしょうか? どうぞよろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- ACCESSのフォームでスクロールバーを一番下に持っていくVBAの記入方法はありますか?
ACCESSのVBAでスクロールバーを一番下に持っていくコマンドはありますか? 教えてください。ACCESSでフォームを作っています。 元となるフォームを「フォームA」として その中にサブフォーム「フォームB」があります。 フォームBについての質問です。 フォームAにメイン情報があり、フォームBは フォームAの関連情報が幾つかとうろくされています 1:Nの関係です フォームBは帳票フォームです。 レコードの新規作成のコマンド「DoCmd.GotoRecord acNewRec」 や 最終レコードへの移動コマンドでは カーソルが一番下に移動するのですが スクロールバーまで移動しないので 画面上変わらなく困っています。 実際の構成は フォームAで選択した顧客の情報が フォームBに日付ごと表示されています。 一画面に5レコード表示するようにしています(1:5) ここで6レコード目の入力のために レコードの新規作成ボタンや最終レコードへの移動ボタンを 作成したのですが、右側のスクロールバーが 動いてくれないので、カーソルだけ移動して 画面上は5レコードが表示されたままになっています。 分かりづらい質問で申し訳ありません なにとぞお願いいたします。
- 締切済み
- Visual Basic
お礼
fa_007さん 丁寧な解説本当にありがとうございます。 私の環境も特殊なのかと思います。Access2013をアンイストールして2003で稼働させると問題は発生しましせんでした。 この問題については一旦、終了させて頂きます。 ありがとうございました。