アクセスのYES NO型の処理について

このQ&Aのポイント
  • アクセス2010でのYES NO型の処理方法についての質問です。
  • フォームで大分類、中分類、小分類のカテゴリーにチェックボックスを作成しています。
  • 商品一覧テーブルでYES NO型のチェックボックスをオンオフしたいがうまくいかないので、解決方法を教えて欲しいです。
回答を見る
  • ベストアンサー

アクセスのYES NO型の処理について

アクセス2010を使用している独学の初心者です。 フォームで大分類、中分類、小分類のカテゴリーにそれぞれチェックボックスを作っており、その商品のいる、いらないを選択したらその商品一覧テーブルにあるYES NO型のチェックボックスをオンオフしたいのですがうまくいきません。 今、同じフォーム内にある大分類とそれぞれ紐づいている中分類と小分類のチェックボックスをオンオフできるように private sub chk_大分類.value=false then me.chk_中分類.value=false me.chk_小分類.value=false ここまで書いているのですが、商品一覧の[大分類]にカテゴリーされている商品の不要商品フラグのチェックボックスをオンオフする書き方がわかりません。 すごくざっくりとした説明になってしまいましたが、どなたかご教示いただけませんでしょうか。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.2

大分類、中分類、小分類、それぞれ別々にテーブルを作成してIDなどで連携したほうがいいような気がしますが、内容がよく分かりませんしかなりの変更になると思いますから、たとえば現在のフォームの小分類のチェック用に小分類だけのテーブルを作成してそれをフォームに表示してそのチェックボックスをチェックするようにします。 フォームを表示したときにすべてのチェックがオフになるように別途更新クエリを作成して実行してください。 それで、添付図のような更新クエリを作成し、フォームでチェックが終わったら実行します。 VBAでやるとしたらチェックボックスの名前と小分類とが一致したレコードのチェックを変更するというループをチェックボックス分繰り返すみたいなコードになると思います。

so_bar
質問者

お礼

ありがとうございました。無事解決しました。お返事大変遅くなり申し訳ありません。

その他の回答 (1)

  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.1

そのコードをどこに書いているのかもわかりませんし、何のためにフォームのチェックボックスをオフにするのかもわかりません。 また、テーブルやフォームの構造もわかりませんので、内容がよく理解できませんが > 商品一覧テーブルにあるYES NO型のチェックボックスをオンオフしたい ここだけ考えると更新クエリでできませんか?

so_bar
質問者

補足

説明不足すいません。 from_F_シーン分類選択画面に記載している式は 書いています。 チェックボックスをそれぞれ19個作っていて、チェックボックスの初期値を設定しているだけです。 T_シーン分類表には列を4列作っていて、 大分類1 中分類1 小分類1 ⬜︎ 大分類1 中分類1 小分類2 ⬜︎ 大分類1 中分類2 小分類3 ⬜︎ ・・・・ というテーブルを作っています。 4列目のチェックボックスと、フォームのチェックボックスを連動したく、フォームの小分類1のチェックボックスをオンオフしたらテーブルの小分類1のYES Noのチェックボックスをオンオフしたいと考えてます。 更新クエリであるとはおもっているのですが、数が多いのでどうにか簡潔にできる方法がないかとこちらにヘルプをした次第です。 初めての質問で、どうすればわかりやすい質問が書けるのかもわからずスマホで質問も書いてるので綺麗に式もこちらに書けない状態で申し訳ありません。 ご意見ありがとうございました。

関連するQ&A

  • ACCESS Yes/No型の集計

    ACCESSでチェックボックスが複数あるテーブルがあります。これら各々の個数を表示させたいと奮闘しております。複数のフィールドがあるので、やり方をご教授いただけますようお願いいたします。構造とやりたいことは下記に記します Yesはチェックボックスにチェックが入っている状態です テーブル ---------------------------------------------- グループ   分類1   分類2   分類3 ----------------------------------------------   A   |  Yes  |  No  |  Yes   A   |  No   |  No   |  Yes   A   |  Yes  |  Yes  |  No   B   |  Yes  |  No  |  Yes   B   |  No   |  No  |  Yes   B   |  Yes  |  No  |  Yes   ・   ・   ・   ZZ 上記のようなテーブルがあります。これを ----------------------------------------------------- グループ   グループ総数   分類1   分類2   分類3 -----------------------------------------------------   A    |   3     |   2   |  1   |  2   B    |   3     |   2   |  0   |  3   ・   ・   ・   ZZ とういうようにグループの総数とチェックボックスにチェックが入った数を算出させたいんです どうかご教授願います

  • ACCESS VBA テーブルデータにYES/NO

    ACCESSの表形式のフォームにYES/NOフィールドを足して 一覧フォームで任意のチェックボックスを選択して 選択されたデータのみを表示するようにしたいです。 しかしチェックボックスはレコードひとつひとつについてるのですが 認識されるチェックボックスは一番上のレコードのチェックボックスのみです。どうすればレコード別に判定できるのがわからないので 詳しい方ご教授お願いします。自分が書いたのは下記コードです。 Dim chkBln As Boolean chkBln = False If チェック50 = True Then chkBln = True MsgBox chkBln End If '検索結果の表示 DoCmd.OpenForm ("データ修正画面") '自身のレコードソースに設定 Forms("データ修正画面").RecordSource = "Select * From T_障害票マスタ WHERE チェック = " & chkBln & ""

  • accessフォーム トルグ yes/no表示切替

    access フォームにてトルグボタンでyes/noの表示を切り替える 単票フォームにyes/no型のチェックボックスがあります。 トルグボタンを押すとチェックしたものだけが表示され、ボタンを解除(押さなければ)すると 全件表示されるようにしたいです。 また、この単票フォームを開けた時は、常にボタンが解除されて全件表示の状態にしたいです。 下記の式だと、ボタンを解除してもチェックしたものだけの表示になり全件表示になりません。 よろしくお願いします。 ----------------------------------------- 単票フォーム名:T2伝票 トルグボタン名:トグル38 チェックボックス名:T2伝票仮 ----------------------------------------- Private Sub トグル38_Click() Dim strWhere As String strWhere = "([T2伝票仮] = True)" Me.Filter = strWhere Me.FilterOn = True End Sub

  • Yes/No型のデータ抽出

    Access97で出面管理(出勤簿)を作成しています。 レポートを印刷する際請求を出す都合上、自社社員分と応援社員分とを分けるため社員名と所属が自社か応援かを分けるためのテーブルを作成しました。 その分類方法はYes/No型(True=応援社員、False=自社社員)に設定しました。 その際、氏名を選択すると自動で自社/応援かが認識できるようにしました。 その後、必要なテーブル・クエリー等を設定し、フォームから入力してみると 自社社員としてしか認識しません。 そこで該当するテーブルから入力(氏名=テキスト型・自社/応援=Yes/No型 チェックボックスONで応援扱い)するとフォーム・レポートでも 認識してくれます。 しかしこの方法では毎日同じ応援社員がいた場合その都度チェックボックスを Onにしなければならず非常に厄介です。 しかもデータが毎日蓄積されるのでしばらく入力を忘れたりするとそれこそ手間がかかってしまいます。 どのように設定(テーブル・クエリー・リレーション等)を変更してやれば 良いのかアドバイスお待ちしております。 ちなみに現時点ではフォームから入力する際、氏名をコンボボックスで選択でき その後連動して所属が決定するようになってます。

  • 繰り返し処理をうまく使えないでしょうか?

    PHP4を使用しています。 フォームで名前がchk1~chk10のまでのチェックボックスがあるとします。 そのチェックボックスにチェックが付いていた場合には1、 チェックが付いていない場合には2を書き出したいとします。 if ($chk1==1){ echo "1"; }else{ echo "2"; } if ($chk2==1){ echo "1"; }else{ echo "2"; } ・・・ とずっと記述すれば可能だと思うのですが、 それをうまく繰り返し処理を使って出来ないでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • Yes/No型を使ってアップロード

    はじめまして。 下記にhtmlを書かせていただいてますが、このhtmlの『アップロード』のボタンを押すと 1. データベース『mdb』のYes/No型にチェックが入る 2. Yes/No型にチェックが入ったものはアップロードされる ようにすることはできるでしょうか?また、何か参考になるサイト様などがあれば 教えていただきたいのです。 おわかりになる方、よろしくお願いします。 下記のような↓フォームです。 ---------------------- <table> <TR> <TD> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='1'> <center><INPUT TYPE='submit' VALUE=' アップロード '><br><center> <p></p> </TD> <TD>登録ファイル1</TD></FORM> <FORM ACTION='' METHOD='POST'> <TR> <TD> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='2'> <center><INPUT TYPE='submit' VALUE=' アップロード '><br><center> <p></p> </TD> <TD>登録ファイル2</TD></FORM> <FORM ACTION='' METHOD='POST'> <INPUT type='hidden' NAME='UPDATE_ID' VALUE='3'> <TR> <TR> </FORM> <TR> </table>

  • 【mysql : HTML】チェックボックスの処理

    チェックボックスで、複数の項目をフラグとして扱うにあたって ビット演算を使いたいと思っています。 この時、チェックボックスを作成するフォームの値は <input type="checkbox" name="category[]" value="1" />ライフ <input type="checkbox" name="category[]" value="2" />デジタルライフ <input type="checkbox" name="category[]" value="4" />趣味 <input type="checkbox" name="category[]" value="8" />エンターテイメント . . . と、valueの値をべき乗づつ増やしてくもしくは、あるいは value の値を1234としてやってあとでx2するかして それらの合計(例えばチェック状態が00101 なら 5)を DBに保存してやるというロジックでいいのでしょうか? 他のポータルサイトのソースをみても、そんなやり方してるサイトをみかけないので はたしてこれで合ってるのか不安になってきて質問させて頂きました。

    • ベストアンサー
    • MySQL
  • Access2003とAccess2007の違い

    Access独習者です。 入門書で「物品貸出状況フォーム」を作成しました。 フォーム画面「物品貸出状況一覧表」の下に作ったコンボボックス289「大分類」とコンボボックス291「小分類」で 貸出状況を調べる物品を絞り込み一覧表に取り込みます。 コンボボックス「大分類」「小分類」の値集合ソースはそれぞれ「T_大分類」と「T_小分類」です。 Access2003では下記のコードとコンボボックス291「小分類」の値集合ソースのクエリビルダに組み込んだ 抽出条件「大分類番号[コンボ289]」で絞り込んだ物品が一覧表に表示されたのですが、Access2007では コンボボックス289「大分類」を変更後コンボボックス291「小分類」が更新されません。 Access2003とAccess2007でなにか違いがあるのでしょうか。 お聞きするのに提示すべきコードなどそろっていないかもしれないのですが、ご助言いただければ助かります。 よろしくお願いいたします。 Private Sub コンボ289_AfterUpdate() Me!コンボ291.Requery End Sub Private Sub コンボ291_AfterUpdate() Me.Filter = "小分類番号=" & コンボ291 Me.FilterOn = True End Sub

  • ACCESS97の帳票フォームで複数コントロールを指定したい

    こんにちは。ACCESS97で帳票フォームを作成し、詳細にチェックボックス(連結コントロール)とテキストボックスを作成しました。フォームフッタ-に「全てチェック」ボタンをつけ、全てのチェックボックスがチェックされるようにしたいのですが、どのようにすればよいのでしょうか。 Me.チェック.value とすると、一番上のレコードしか変わりません。全てのチェックボックスを一括で変えるか、配列になっているのならばループで回して変えたいのですが。 Me.チェック(1).value のように書いても「型が一致しない」とエラーになってしまいます。 書き方が分からないので教えてください。どうか宜しくお願いします。

  • ACCESSで

    まず始めに。 私はAccess初心者なので、何をどう質問して良いかもはっきりは分かりません。何か、足りない部分があれば書いて下さい。 喫茶店の売り上げ集計(メニュー別&顧客別)等のシステムをAccess2002で作っています。 と言っても、まだ始めのほうで詰まってしまっての質問です。 商品テーブル、商品の中分類テーブル、大分類テーブル、売上伝票テーブル、明細テーブルと在り、商品登録クエリ&フォーム、売り上げ登録クエリ&フォーム、明細登録クエリ&フォームがあります。 売り上げ登録フォームは、売り上げ伝票としています。 明細登録フォームは売り上げ登録フォーム(メイン)のサブフォームとしてあります。 メインフォーム上に入力日、販売日、顧客名(IDからクエリで引いてきます。)等をテキストボックスやコンボボックスなどで入力します。 伝票IDはオートナンバー型で指定し、それをサブフォーム上のIDに代入して登録しています。 大分類で飲み物と食べ物を分け、中分類で、『ホット系・アイス系・生ジュース系・カレー系・・・・軽食系・ケーキ系』等と分かれており、カレー系から軽食系までは、大盛小盛が指定出来るのですが、これを明細フォームでチェックボックスで入力しています。 問題はここからで、帳票形式の明細フォームで入力しているのですが、大盛、小盛が指定出来ない物の行のチェックボックスの『visible』を「false」にし、大盛、小盛が指定出来る物の行のチェックボックスの『visible』は「true」にしたいと想い、VBAで組みました。が、レコードセットを使わないとメインフォーム中の全ての行のチェックボックスの『visible』が同時に変わってしまいます。 windowsXPのコントロールパネルのODBCの設定もおかしいかもしれませんがどうしても分かりません。 基本的な事なのかもしれませんが、よろしくお願いします。

専門家に質問してみよう