• ベストアンサー
  • すぐに回答を!

AccessVBAでレコード数分のチェックボックスを表示するには?

AccessVBAを勉強して間もないのですが、質問がございます。 ご教授願います。 Access2003のVBA、OSはXPを使用して開発しております。 【やりたいこと】 ・MDBよりデータを抽出し、レコード数分のチェックボックスと テキストボックスを動的に作成したい。 (レコード数の変動があるため、固定でコントロールを配置できないため、 動的に作成することを考えました) テキストボックスとMDBのデータを連結するのは可能だということは わかったのですが、チェックボックスを連結させることはできなさそうです。 何か別の方法でも構いませんので、アドバイス頂きたいです。 宜しくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数1149
  • ありがとう数1

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

  • ベストアンサー
  • 回答No.2

チェックボックスを配置して何をされたいのかわかりませんが、 そのレコードを選択した、する、用途であれば以下が参考になると思います。 (帳票フォームでのことになりますが) 非連結のチェックボックスでレコードを選択する > 動的に作成 > レコード数の変動 抽出レコード数上限がある程度決められていた場合(10とか20とか)、 その上限分のチェックボックスを作っておき、使わないものを不可視にするなど フォームのイメージ、操作のイメージを補足されたら、より具体的な回答が得られると思います。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • ACCESS フォームの詳細セクションのコントロールを全て非連結で作ろ

    ACCESS フォームの詳細セクションのコントロールを全て非連結で作ろうとしています。 レコードセットに連結していれば、詳細セクションにはレコード件数分の行が自動的に生成され、データのセットも勝手に行われますが、非連結なので、自分で(VBAで)制御する方法を知りたいです。 行にはテキストボックスだけでなくコマンドボタンやチェックボックスも配置します。 ・VBAで行を作ってそこのテキストボックスに任意の値をセットする方法 ・VBAで行にあるオブジェクトの値等を参照する方法 以上を教えていただけませんでしょうか? (そのようなサイトがあれば、それも教えていただきたいです)

  • AccessVBA メイン/サブフォームのチェックボックス

    AccessVBAを用いて、メインフォーム内にサブフォームを設置しています。 メイン、サブの両方にチェックボックスがあり、メインに4個(オプショングループ)、サブには表形式で設定しています。全て連結コントロールです。 メインフォームのレコードソースは、テーブル、サブは、テーブルの値をパラメータにしたクエリーを割り当てています。 このフォームを表示した状態で、メイン内のチェックボックスを1個~4個(任意)クリックした状態で、サブ内のチェックボックスをクリックすると、メイン内でクリックしてレとしたはずのチェックが全て外れてしまいます。 この現象を修正したいのですが方法が解りません。 どなたか教えて下さい!! ちなみに、複数の人間が入力するので、メイン、サブ共にレコードロックは「編集済みレコード」としています。 宜しくお願い致します!!

  • Accessのチェックボックス

    こんにちは。AccessのVBAについてお教えください。 下記URLに質問内容の画像を配置しました。 http://kie.nu/tli フォーム1にテキストボックス1というコントロールを配置しました。テキストボックス1に名簿IDの数値を入力して、ボタン1をクリックします。 もしチェックボックス1に既にチェックが入っていたらメッセージ「チェックが既に入っています。」といったメッセージを表示したいと思います。 そこで、ボタンを押した時に、 If フォーム1!サブフォーム1!チェックボックス1.Value = -1 Then msgbox "チェックが既に入っています。" end if とやりましたが、うまく動きません。どうやれば、うまく動くようになりますかご教授頂けませんでしょうか。よろしくお願いいたします。

その他の回答 (1)

  • 回答No.1

質問の内容を二通りに考えたのですが。 一つは、 >チェックボックスを連結させることはできなさそうです。 データがYesNo型ならばフォームの自動作成 を選択するとチェックボックスが作成され ます。 たとえばテーブルをtblTとします。 適当にフィールドがあるとします。 そのテーブルに新たにチェック1(YesNo型) を追加します。 次にフォームの新規作成からこのテーブルを 選択してオートフォーム表形式を選択します。 これでチェックボックスがついたフォームが できます。あとはフォームのレコードソース をクエリに変更すればできます。 という答えです。もう一つはコントロールを CreateControl関数を使ってフォームに作る という方法ですが、もし質問がこのことなら CreateContorolで調べてみてください。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • AccessVBAのフォームサイズがデザイナより小さく表示されてしまう

    AccessVBAのフォームサイズがデザイナより小さく表示されてしまう件 AccessVBAのフォームサイズがデザイナより 小さく表示されてしまうという現象に悩んでいます。 ある事をすると、発生しなくなるのですが、発生しなく なった後、同じ現象を作ることが出来無い為、何が原因で 発生していたのか分からずに、悩んでいます。 同様の現象を体験した方、原因を知っている方、 是非ともお力を貸してください。 ※説明が難しかったので、実際の手順を細かく記載いたします。 <開発環境> Access2003 <現象> 1.TEST.mdbを開く(Shift押さずに起動) 2.Form_AAAを開く 結果:Form_AAAの幅の大きさが、デザインビューで作成している    デザインより、1マス(※1)程度、縮んで表示される。 (※1) 1マスとは、AccessVBAのデザインビューの1マスのことを指します。 <改善方法> 1.TEST.mdbを開く(Shift押して編集できる状態にする) 2.Form_AAAをデザインビューで開き、何も変更せずに上書き保存する 3.TEST.mdbを閉じる 4.TEST.mdbを開く(Shift押さずに起動) 5.Form_AAAを開く 結果:Form_AAAの幅の大きさが、デザインビューで作成している    デザイン通り表示される。     よろしくお願いいたします。

  • AccessVBAで入力文字の確認がしたい

    こんにちは。 私は今AccessVBAである検索機能を作成中なのですが、 わからない部分があったので質問させてください。 その検索機能とは、テキストボックスに記入した文字を含むレコード をテーブルから探すという機能で、その探すテーブル内には半角カナで データが入力されています。そこで、その検索のテキストボックスにも 自動で半角カナ入力できるようにしたいのですが、どのような関数、またはメソッドを利用すればよいのでしょうか? また引数なんかも詳しく教えていただけるとたすかります。 よろしくおねがいします。

  • AccessVBAでサポートお願いします。

    こんばんわ。AccessVBA初心者です。 下記のような処理を作りたいのですがわかりません・・。 もしお分かりになる方がいらっしゃいましたらサポートをお願い致します。 「テーブルA」「テーブルB」があり、それぞれのテーブルに連結した「フォームA」「フォームB」(両方とも帳票フォーム)があります。 テーブルには幾つかのフィールドがあり、その中にチェックボックスに連結したフィールドがあります。 まず、「フォームA」を開き、任意のレコードのチェックボックスにチェックを入れ(複数選択あり)、あるコマンドボタンをクリックするとチェックの入ったレコードのみを「テーブルA」から「テーブルB」へ移動させる処理を作成したいのですがどうもうまく作れません。 「テーブルB」へ移動後は「テーブルA」から該当のレコードが削除されている必要があります。 また、テーブルBには随時データが蓄積されていく必要があります。 どなたかお分かりになる方がいらっしゃいましたらご教授願います。 その際、VBAのソースを記述頂けますと助かります。 どうぞ宜しくお願い致します。

  • Access VBAで、動く動かない

    AccessVBAを作成しましたが、 WindowsXPだと動いたり、 2003だと動かなかったりと、 とても、まちまちです。 そこで、どのWindowsEditionだと、これが動いて、 などといったような、一覧があるURLをご存知でないでしょうか?どうか、教えてください。

  • ACCESS フォームで抽出条件の違うレコード表示

    宜しくお願いします。 ACCESSでレコードソースをQ_Bとするフォームに、ヘッダー部分に別のクエリ(Q_Aとします)のデータを表示させようと思っています。 Q_Aのデータを元にフォーム内でnoごとに表示するテキストボックス(リストボックスなどでも可)を変えて表示させたいのですがうまくいきません。 Q_Aは No 日付 1 1/15 2 2/1 3 2/5 4 3/12 ・・・レコード数は10あります。 Q_Aの日付フィールドのみ一定期間ごとに変更します。 ですので、一つのテキストボックスには例えば Noのフィールドの「1」のレコードが表示されるようにしたいのです。 Q_Aを元に、レコード数10が個別に表示されるテキストボックス等を、VBAなど?で抽出条件を指定しておきフォームを開いた際に表示できるようにしておきたいのですが、どのような方法があるかご教授願えますでしょうか? よろしくお願い致します。

  • [Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには

    Accessにおいて。 帳票フォームの"詳細"に非連結のコントロール(例:テキストボックス)を配置し、それぞれ別々の値を持たせることは可能なのでしょうか? 例えば。 VBAにおいて、カレントレコードのAという値とBという値を計算し、その値を非連結のテキストボックスに挿入したとします。 単票フォームであれば、問題なくテキストボックスには計算後の値が表示されるわけですが…… 帳票フォームの場合では、"規定値"に計算式を入れたときと同様、先頭の値と同じものが連続するテキストボックスに表示されてしまいます。 これを回避し、計算後のデータを連続するテキストボックスにそれぞれの値として表示させるには、どのようにすればよいのでしょうか? もちろん、連結させたコントロールを使用すれば、問題はないのですが…… 状況によっては、これが行えた方が便利かと思い、質問させていただきます。 「帳票フォームでは不可能である」といった回答でもかまいません。 どうぞよろしくお願いいたします。

  • 前レコードのテキストボックスと同じ値を表示させる

    環境:XP,ACCESS2003 帳票形式のフォームがあります。 次のレコードの入力に移った時、前のレコードのあるテキストボックスは、同じ内容を表示させる方法がわかりません。なお、同じ内容を表示させたいテキストボックスは連結でテーブルのフィールドをコントロールソースにしています。

  • Access VBA

    AccessとWordの連携について教えてください。 フォーム[会社データ]上に「cmd実行」ボタンを配置しています。 行いたいのは次の作業です。 上記「cmd実行」ボタンのクリックによりWordを起動(新規文書)し,フォームに表示しているレコードから[会社名]テキストボックスのデータを2行目のセンターに,[担当者]テキストボックスのデータを4行目の左端にそれぞれ出力する。 AccessのVBAで[ツール][参照設定]で[Microsoft Word Object Library]を選択済みです。 どなたかご教授いただければと思います。何とぞよろしくお願いいたします。 なお,AccessのVBAで[ツール][参照設定]で[Microsoft Word Object Library]を選択済みです。

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

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

  • AccessVBA 帳票フォームの非連結コントロールにデータを入力したいが

    AccessVBAの質問です。 フォームを帳票フォームにして、一覧形式でデータを表示しています。 その中に、データ元となるクエリーとは関係なく、非連結のコントロールが一個あります。 そこに、自由に値を入力して、テーブルへ更新したいのですが・・・。 値を入力すると、一覧上の同じコントロールすべてに同じ値が自動的に入ってしまいます。 行ごとに違う値を入力するにはどうしたらよろしいのでしょうか。 よろしくお願いいたします。