過去ログ

                                Page     442
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼フォームに表示されるレコードの非表示  なお 03/11/20(木) 17:08
   ┗Re:フォームに表示されるレコードの非表示  イケガミ 03/11/21(金) 2:52
      ┗Re:フォームに表示されるレコードの非表示  なお 03/11/21(金) 9:16
         ┗Re:フォームに表示されるレコードの非表示  tomcat 03/11/22(土) 1:11
            ┗Re:フォームに表示されるレコードの非表示  なお 03/11/22(土) 8:53

 ───────────────────────────────────────
 ■題名 : フォームに表示されるレコードの非表示
 ■名前 : なお
 ■日付 : 03/11/20(木) 17:08
 -------------------------------------------------------------------------
   みなさま、お疲れ様です。
言葉の使い方が適切ではないかもしれませんがお許しください。

今回行いたいことは、帳票フォーム形式のフォームに表示されている
レコード(データベース?)をフォームを開いたときに非表示にしたいんです。

|No.| 仕入先 | 商品 | 単価 | 数量 |・・・
 0001   AAAA    A-001   100    10
 0002   BBBB    B-002   500     5
 0003   CCCC    C-003   50    100
          ・
          ・
          ・
と、こんな具合なんですが、簡単に表示/非表示にする方法ってありますでしょうか?
項目を1つ1つ visible=false で非表示にもできると思うんですが、
なにせ、項目が多いのでちょっとためらってます・・・。
Filterを使ってありえない条件で非表示に!とも考えたんですが
レコードの数を入力して、入力した数とレコードの数が合ったときに
表示させたいので、Filterを使った非表示では数が合わなくなってしまうんです。

どうか良い方法がありましたら、教えてください。
よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:フォームに表示されるレコードの非表示  ■名前 : イケガミ  ■日付 : 03/11/21(金) 2:52  -------------------------------------------------------------------------
   >レコードの数を入力して、入力した数とレコードの数が合ったときに
>表示させたいので、Filterを使った非表示では数が合わなくなってしまうんです。

この部分がよく分かりませんが、とりあえず、既存レコードを表示したくないのなら
フォームのプロパティで、「データ入力用」を"はい"にすれば大丈夫だと思います。

 ───────────────────────────────────────  ■題名 : Re:フォームに表示されるレコードの非表示  ■名前 : なお  ■日付 : 03/11/21(金) 9:16  -------------------------------------------------------------------------
   ▼イケガミ さん:
おはようございます。
説明が足りなくて申し訳ありません。

まず、
Filterを使った非表示って言うのは、ありえない条件で抽出しようとすると
レコード件数は0件になりますよね・・・。
それで、レコードが見えなくなるな〜と思ったんですが
これだとレコード件数も取得できないのでダメだと気が付きました。

★質問させていただく内容の補足です。
フォームのヘッダーにテキストボックスを2つ設けて
片方は非表示で「=Recordset.RecordCount」でレコード数をカウントしたものを
入れているんです。
もう片方はレコード数の入力用のテキストボックスなんです。

ここで言うレコードと言うのは商品とお考え下さい。
なので、商品分のレコードが存在するんです。
1つの商品には1枚の請求書みたいなのが存在する訳なんですが
最終的にこの請求書の枚数を数えて、入力用のテキストボックスに入力する訳です。
それで、レコード数と請求書の枚数が一致したときに、初めてレコードを表示させたいんです・・・。
商品が出荷する最後の工程なので、こんなチェックもしようと考えている訳なんです。

長くなってしまって申し訳ありませんでした。

>フォームのプロパティで、「データ入力用」を"はい"にすれば大丈夫だと思います。

イケガミさんの言われた方法を試してみましたが、
レコードのカウントもなくなってしまいました・・・。

VBをやっている知人が「フレームに乗せればできるよ」と
言っていたのですが、Accessにフレームってあるんでしょうか?
使用しているAccessは2000です。

申し訳ありませんが、よろしくお願いいたします。

 ───────────────────────────────────────  ■題名 : Re:フォームに表示されるレコードの非表示  ■名前 : tomcat  ■日付 : 03/11/22(土) 1:11  -------------------------------------------------------------------------
   なおさん、初めまして。

レコードの非表示を行いたいという事ですが、詳細プロパティの
[書式]->[可視]を「いいえ」にすると言うのはどうでしょう?

検索レコード表示時は「Me.詳細.Visible=False」とし、
テキスト入力後のイベントで入力値と非表示にしてあった
レコードカウントを比較します。
この時、件数が一致した場合、「Me.詳細.Visible=True」と
する事で可能だと思いますが、一度試してみてはいかがでしょうか。

 ───────────────────────────────────────  ■題名 : Re:フォームに表示されるレコードの非表示  ■名前 : なお  ■日付 : 03/11/22(土) 8:53  -------------------------------------------------------------------------
   ▼tomcat さん:
tomcatさん、ありがとうございます。
詳細のレコードの部分の表示/非表示をすることが出来ました。
あの、詳細というものを 「me.詳細.visible = false」なんて
使い方もできるんですね・・・。

まだまだ、Accessを始めたばかりでいろいろわからない事が
多いと思いますが、これからもよろしくお願いいたします。

イケガミさん、tomcatさん、本当にありがとうございました。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 442