• ベストアンサー

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

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

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

  • ベストアンサー
noname#22222
noname#22222
回答No.1

無理です。 制約・仕様の範囲内で目的を達成するのも腕の見せ所です。

s-suzuki
質問者

お礼

む・無理ですか^^; ご回答ありがとうございます。

関連するQ&A

  • Access2000 フォームでのデータ入力について

    質問させていただきます。 Access2000で、あるフォームを作りました(帳票フォーム)。フォームの基になるレコードソースはクエリーです。このクエリーは原料伝票テーブルから在庫数が特定の数量を下回った原料を抽出しています。 フォームは以下イメージです。 原料コード 原料名  在庫数  発注数 原料コード~在庫数をクエリーから、発注数を手入力 にしました(発注数のコントロールソースは非連結です)。 で・・・発注数に値を入力すると全部の行が同じ値になってしまします。これを改善したいのですが・・・。 このやり方は根本的に間違っているのでしょうか?

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

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

  • ACCESS2000の帳票フォームでテキストボックスの入力値を取得したい

    こんにちは。ACCESS2000でツールを作成しています。 テーブルはExcelにリンクさせ、クエリを介して帳票フォームで データを表示しています。 帳票フォームのレコード毎にテキストボックスを追加して それぞれ入力できるようにし、その値をVBAで取得したいのですが どうすればよいでしょうか。 テキストボックスを追加して実行すると、一つのテキストボックスに 入力した値が全てのレコードに反映されているようです。 帳票フォームのしくみがよく分かりません。 どなたか教えていただけないでしょうか。 宜しくお願いします。

  • 帳票フォーム後に

    マクロを使ってフォームの操作を簡単にしようとしているのですが 現在、クエリを作りそのクエリをフォームのレコードソースで引っ張ってきて帳票フォームで表示しています。 ここから先、この一覧で出ている中から一人のボタンを押したら更に詳細な情報が載っているフォームを開きたいと思っています。 ですが帳票フォームで出てきた一覧の中から一人だけの情報を出してくるやり方がわかりません。 どうにか帳票フォームから一つの情報をまた別のフォームに表示することは出来ないでしょうか?説明が下手で申しわけないです(;-;)

  • Access、更新用データと連結したフォーム

    度々の質問で恐縮です。 検索フォームの検索結果を、レコードセレクタのWクリックで、 更新するためのテーブルと連結したフォームを開いて、 そのフォーム項目に「値の代入」をしています。 で、その「更新用データのフォーム」で更新項目を編集し、 ボタンを押すと「フォームと連結したテーブル」を使った更新クエリを実行する、 というマクロを実行するようにしてみました。 その処理を実行後、「更新用のフォーム」を閉じて、最初に書いた検索フォームで 検索すると、更新実行結果が反映しません。 レコードセレクタのWクリックを抜きにして、直接「更新用フォーム」を開き、 そのフォームにある「更新用のマクロ」を実行するボタンをキックすると反映します。 で、今は更新用フォームからマクロをキックするボタンは消して、 更新用フォームを閉じると、更新用データのテーブルは更新項目を反映しますので、 直接「更新用マクロ」をキックするだけのボタンしかないフォームを別に開いて、 そのボタンを押すようにしています。 最初の構成で、つまり、「更新用フォームで編集し、その画面のボタンで 更新用マクロをキックして更新実行したい」のですが、編集内容が 「更新データテーブル」に反映するには、どうすれば良いでしょうか? くだくだしい説明を書いてしまい、まことに申し訳ありませんが、よろしくお願いします。

  • 帳票から単票フォームへの表示がうまくいきません

    ACCESSを始めたばかりです。 帳票表示されているレコードを単票フォームで表示させたいです。 テーブル「売上データ」がありこのテーブルを使って帳票用と単票用のクエリを作成、それぞれに対してフォームを作っています。 「売上データ」には、オートナンバーで No があり、これを主キーにしてあります。 クエリ Q帳票   フォーム F帳票 クエリ Q単票   フォーム F単票 フォームF帳票には、レコード内にボタンをおきました。 ボタンには、下記のマクロをつくって イベント クリック時 のところにいれました。 マクロ フォームを開く  フォーム名 :F単票  ビュー   :フォームビュー  フィルタ名 :  Where条件式 :[No]=[Forms]![F帳票]![No]  データモード:  ウィンドウモード:ダイアログ フォームF帳票 で、検索窓を作って検索した一覧の中から単票表示したいレコードのボタンをクリックして単票フォームをダイアログで開かせたいです。 上記のようにやってみたのですが、単票フォームは開くもののデータは空白になってしまいます。 ちなみに、作ったマクロを実行してみると Forms!F帳票!No とパラメータの入力を求められるので適当な数字をいれるとその数字に該当した単票フォームが開きます。 WEBで探して同じような感じで作ってみたのですがうまくいきません。 どこが間違っているのでしょうか? ちなみにクエリ Q単票 の Noの抽出条件に[Forms]![F帳票]![No]をいれてみたりもしましたがうまくいきませんでした(空白で単票が開く) 何卒よろしくお願いします。

  • Access2000 フォームでのデータ入力について

    質問させていただきます。 以下のようなフォームを作りました(帳票フォーム)。 入庫予定日 原料 在庫数 発注数 ○○○   ○○   ○   ○ ○○○   ○○   ○   ○ 入庫予定日、原料、在庫数は選択クエリー(前日までの在庫を求めるため。また、この項目を変更することはありません)から、発注数(非連結)は手入力で行います。そして発注数に値を入力するとすべてのレコードが同じ値になってしまいます(非連結だから?)。これを回避する方法はあるでしょうか。

  • Accessの帳票形式のフォームについて

    いつも楽しく勉強させていただいております。 OSはWindows7。 フロントエンドがAccess2013でSQLServer2012がバックエンドです。 複数レコードを一度に表示するいわゆる帳票形式のフォームを作ります。 [保存]ボタンで変更を保存、[キャンセル]ボタンで保存しないでフォームを閉じます。 このようなフォームを作る際、私はこれまでこの方法でやってきました。 1.本物テーブルの内容をテンポラリのテーブルにコピー 2.テンポラリのテーブルと連結したフォームで編集 3.[保存]ボタンのクリックでテンポラリのテーブルで本物を上書き この方法の弱点は本物のテーブルにロックがかからないことです。 かといって本物のテーブルに連結したフォームにすると編集した内容をキャンセル することができません。 これを解決する根本的な方法はないものでしょうか。 たとえば帳票形式にする代わりにデータグリッドのようなコントロールを使用して 本物のテーブルにロックをかけつつ複数レコードの変更のキャンセルも可能という フォームは作れますか。 フォームをデザインビューで開いたときに見られるActiveXコントロールには データグリッドに類するコントロールはないようです。 ネットで調べるとVB6.0のDataGridコントロールを使用できるとか、 操作がうまくいかないとかAccessでVBのコントロールを使用するのはそもそも 許されないとか書いてあるのでデータグリッドを使う方法は無理でしょうか。 もう一度問題を整理すると、以下のようになります。 1.複数レコードを一度に表示して編集したい。 2.そのレコードにロックをかけたい。 3.編集のキャンセル(ロールバック)も可能にしたい。 帳票フォームでもデータグリッドでも方法は問いません。 あるいは「Accessでは実現できない」という情報でもいいです。 お詳しい方、どうかよろしくお願いいたします。

  • データ入力用フォームでコントロールが表示されない

    はじめまして、 現在、ACCESS2000のMDBからADP+SQLへの移行をしているのですが。 「t_受注」テーブルをデータソースとするフォームを 「データ入力用プロパティ」を「はい」にして、 データ入力用のフォームとして使っていました。 ADPへアップサイジングしたら コントロールがまったく表示されずに困っています。 「データ入力用プロパティ」を「いいえ」にすると、 全てのコントロールと「t_受注」テーブルのデータが見えます。 どうか宜しくお願いします。

  • 非連結のフォームからテーブルにデータを追加する

    アクセスにおいて フォームの非連結のテキストボックスから テーブルにデータを追加するには VBAのADOを学ぶしかないのでしょうか? ADOを使わなくても 追加クエリ等を使えば、対応できますか? よろしくお願い致します。

専門家に質問してみよう