• ベストアンサー

別テーブルに保存したいのですが

アクセスでAテーブルからフォームを作り、そのフォームに別のテーブルBにある項目を追加したいのですが、 A,Bはnoでリレーションが設定してあります。 ツールボックスからテキストを追加してコントロールソース設定しましたができませんでした。 マクロで値の代入しましたが設定が違うのかできませんでした。 できるだけ簡単な方法でお願いします。

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

  • ベストアンサー
  • imo
  • ベストアンサー率35% (28/78)
回答No.2

テーブルBをレコードソースとしたフォーム  を作成してテーブルAのフォームにnoを連結フィールドとした サブフォームとして埋め込めば おそらくdesk34さんの求めている結果になるとおもいます。 テーブルAに対してテーブルBは1レコード以下であるならば サブフォームのレコードセレクタなどを全て取っ払ってしまえば テキストボックス様になります。(あまりお勧めしませんが)

desk34
質問者

お礼

ありがとうございました。 ちゃんとデータ移行できました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • imo
  • ベストアンサー率35% (28/78)
回答No.1

バージョンは2000でしょうか?プロジェクトとデータベースで 若干違うのですが データベースであれば リレーションどっちがどう 1対多なのかわからないのですけど Bテーブルの項目を含んだクエリーを作成して そのクエリーでフォームをつくるのがよろしいかと思いますけど。

desk34
質問者

補足

バージョンは2000も97でもどちらでもOKです。 Aが1Bが多でリレーションくんであります。 ちょっと説明が足りなかったですがAからのフォームは既にあってそれに1項目だけ追加したいのですが。 更新クエリーでマクロでクエリーを開くをやったのですが、上手く更新できませんでした。 よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Access フォーム上でのテキストボックスとテーブルの連結

    フォームヴィザードからフォームを作成すると、 テキストボックスと指定したテーブルを連結させることができるのですが、デザインビューでそれをするときに、テキストボックスのプロパティのコントロールソースにテーブル名を入れれば連結できるのかと思いきや、うまく表示されません。どこを設定すればテキストボックスとテーブルを連結できるのでしょうか?

  • 複数のテーブルの検索について

    お世話になっております。 題名にありますように、複数のテーブルに登録のあるデータを、テキストフォームやチェックボックス、プルダウンなどのフォームで入力(選択)されたものを(PHPにて)検索したいと考えておりますが、googleなどで調べていても、キーワードが適切でないためか、得たい情報を得られずにおります。 以下のようなテーブル構成で、上記質問のような検索をする場合、(googleなどで検索するには)どのようなキーワードが適切でしょうか?ソースを教えていただくのが簡単ですが、理解を深めたいと考えての質問です。お忙しい中恐縮ですが、アドバイスのほど宜しくお願いいたします。 table_a id name address category table_b no id title subject 上記テーブルA、Bに設定されたフィールドを、各フォームににて入力(選択)されたフォームで一括で検索するソースを学びたいのです。 ※table_a と table_b にある id で紐付けています。

  • フォームからテーブルへの保存

    Access2000を使っていますが、初心者です。 まず、フォームを作成し、コンボボックスでテーブル1からデータを取ってきて表示させています。そのコンボボックスに表示させているデータをテーブル2に保存したいのです。 コントロールソースで指定するとコンボボックスからテーブル1のデータを選択できません。これは何がおかしいのでしょうか。そもそもテーブル1のデータをフォームからテーブル2に保存するということはできないのでしょうか。保存させる方法がありましたら教えて頂けませんでしょうか。 困っております。できれば分かり易く教えて頂けないでしょうか。

  • ACCESSのフォーム内のテキストボックスのコントロールソース

    ACECESSでフォームを作り、テキストボックスを作成します。次に、そのテキストボックスへテーブルAのデータBを割り当てたとします。このとき、このテキストボックスに、テーブルAのデータBが割り当てられている事を確実に知る方法はありますでしょうか。 このテキストボックスのプロパティのコントロールソースを参照すると、データBが表示されますが、テーブルAの情報が表示されません。自分で作成したフォームについてはそれでも良いのですが、今回他の人が作成したフォームを見る必要があり、どのテーブルのどデータを割り当てているかを確実に知りたいのですが、その方法をご存じでしたら教えて下さい。

  • access vbaのテキストボックスについて

    例えば、sampleというテーブルがあり、そのテーブルは列A,列Bという構成だったとします。データとしては下記のようにします。  A  B 1 a1 b1 2 a2 b2 3 a3 b3 この時、フォーム上にテキストボックス1とテキストボックス2を作成し、コントロールソースにそれぞれsampleテーブルの列A、列Bを指定します。 このとき、3行目のデータ(a3とb3)を表示するときだけテキストボックスを太枠にすることは可能でしょうか? もしくは、他のテキストボックスと見栄え的に変えることは可能でしょうか? よろしくお願いします。

  • Accessで式の計算結果がテーブルに反映されない。

    計算結果を表すテキストボックスのコントロールソースに式を書き込みました。フォーム上では、計算されてでてきたのですが、その数値がテーブル上では現れてこないのです。テーブルでも同じ式を入れる必要があるのでしょうか?

  • Accessのテーブルのフィールドに式を入れる方法

    質問:1 テーブルのフィールドに式を入れる方法を教えてください。 フィールド1、フィールド2、フィールド3とある場合に、 フィールド3=フィールド1+フィールド2を自動入力したいのですが、 どこで設定すればいいのか教えてください。 質問:2 フォームのテキストボックスのコントロールソースに下の式を設定してあります。 ="K-" & [区分] & "-" & CStr([通番]) これをテーブルのフィールドに反映させるにはどのような設定を行えばいいでしょうか。 (フォームのコントロールはウィザードでテーブルの全フィールドを取り込んでいます。) よろしくお願いします。

  • テキストボックスにクエリ結果を表示させたい

    フォームにテキストボックスAがあり、そこに入力した文字(下記テーブルのフィールド1の文字)をクエリーの「抽出条件」にし、同じフォーム上のテキストボックスBに表示しようと思っています。 クエリを開くとパラメータの入力を求めてきて、入力するとうまく抽出されます。 テーブルは フィールド1|フィールド2   A   |  10   B   |  20   C   |  30   D   |  40 のような簡単なものです。 テキストボックスBのコントロールソースに 「=[○×クエリ]![フィールド2]とやっても「#Name?」と表示されてしまいます。 どのようにやればよいのでしょうか?

  • ACCESSのテーブルとフォーム

    大変失礼ですが、いきなり質問です。よろしくお願いします。 テーブルに「受注データ」 フォームに「入力画面」というのを作ってあります。 そのフォームの一部に「商品金額」・「送料」・「消費税」・「合計金額」というテキストボックスがあります。それぞれのコントロールソースには単純にテーブルのデータを使うようにしてありますが・・・・・・「合計金額」のコントロールソースに「商品金額」・「送料」・「消費税」の合計を計算してくださいというような設定をしてしまったら、フォーム上ではしっかり計算をして表示してくれたのですが、テーブルの「合計金額」の列は空白になってしまいます。 テーブルの列が空白ではなく、フォームで表示されたその数値をテーブルの列に戻す?返す?という事を設定するにはどうしたら宜しいのでしょうか?是非ご教示下さいます様お願い申し上げます。ちなみにACCESS2000を使用しています。なぜかVBAの画面でヘルプを開こうとするとインストールされていないみたいで開かないんです。(←これ、余談です。すみません。)

  • 別のテーブルから別のテーブルへデータを保存する方法

    Access2002です。 二つのコンボボックス、大・小でそれぞれ絞り込みを行なうようにしています。 大で絞り込んだ結果が小に反映されるのですが、追加で新しい項目も登録させたいです。 その際に、次に絞り込みを行なうときに新規で小に追加された項目が、大を選んだ後にきちんと表示されるようにしたいのですが、その処理をどうすればいいのか分かりません。 それぞれ番号を振ってあるので、小に新規登録するときに、その時点で選択されている大の番号を自動で取得し、小のテーブルに入れられればと思っています。 大テーブル ・大項目コード(オートナンバー型) ・大項目(テキスト型) 小テーブル ・小項目コード(オートナンバー型) ・小項目(テキスト型) ・大項目コード(数値型:ここに大テーブルの「大項目コード」を入れたい) テーブルは上記のようになっています。 絞り込みは下記のように、大・小ふたつ分記載してあります(名前以外は同じです) Private Sub コンボ大_NotInList(NewData As String, Response As Integer) Dim strmsg As String strmsg = "登録されていない語句です。保存しますか?" If 1 <> MsgBox(strmsg, 1) Then Response = acDataErrContinue Me.コンボ大.Undo Else DoCmd.SetWarnings False DoCmd.OpenQuery "追加クエリ" Response = acDataErrAdded DoCmd.SetWarnings True MsgBox "登録しました。" End If End Sub 追加クエリはフィールドに『式1: Forms!入力フォーム!コンボ.text』、レコードの追加には『大項目』としています。小も同様です。 現在は別のテキストボックスに大の『大項目コード』を表示させ、そこから小のテーブルに入れられないかと思ってます。テキストボックスに表示させるのは出来ました。 その値を、小に新規で項目を登録する際に、一緒に小テーブルに入れられればと思っていますが、実際にどうすればいいのか、、ネットや本で調べてみましたがさっぱり分かりません。 望む結果になれば方法は問わないので、お知恵を拝借できればと思います。 分かりづらい文章かもしれませんが、よろしくお願いします。

ワークを避けて工具交換したい
このQ&Aのポイント
  • マシニングセンターでワークを避けて工具交換したいのですが、普通にX軸を原点復帰させると、逆にワークに近づいてしまいます。
  • プログラムで機械座標系の任意の位置に動かせるコードがあれば、工具交換時にワークへの影響を避けることができます。
  • 工具交換時には、X軸を原点復帰させる代わりに、プログラムで機械座標系の任意の位置に工具を移動させる方法を採用することが有効です。
回答を見る

専門家に質問してみよう