価格マスターテーブルの価格フィールドの価格を新価格に変更しました。(手入力にて上書き済み)価格マスター以外のテーブルの価格フィールドの価格を、価格マスターを参照(新価格)させ、一気に新価格に変更させたいのですが、何か良い方法ありますでしょうか?よろしくお願い致します。

A 回答 (1件)

こんばんは。


価格マスタとその他のテーブルは、何かのユニークなキーでリンクが取れていることを仮定してお応えします。

<クエリーを使う方法>
(その他のテーブルは複数あっても1つずつ更新します)
1.データベースウィンドウが開いている状態で、クエリーの新規作成を行います。
2.価格マスタとその他のテーブル(のうち1つ)を追加します。(2つのテーブルのキーにリンクが自動的に張られたと思います)
3.ツールバーのクエリー→更新クエリーを選択します
4.下部の”フィールド”の欄に、更新したいフィールド名、同じく、”テーブル”の欄に、更新したいテーブル名(その他のテーブル)を、設定します。
5.”レコードの更新”欄に、更新元のテーブルと項目名を記述します。
  例)[価格マスター].[価格]

バージョンの古いACCESSを使用しているので、多少違うかも知れません。その時はスミマセン。
回答が的を得ていなかった場合はお許しください。
    • good
    • 0
この回答へのお礼

こんにちは、アドバイス参考にやってみたら、出来ました。本当にありがとうございました。また何かの時はよろしくお願い致します。助かりました。

お礼日時:2002/03/10 08:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QAccess2003であるフィールドの値に対して、あるフィールドの参照テーブルを選ぶ?、切り替える。?

Access2003を使っています。
あるフィールドの値に対して、あるフィールドの参照テーブルを選ぶ?、切り替える。?みたいな事をやりたいのですが、なにぶん初心者でどうしたら良いかわからず、何を勉強すれば良いかもわからないので、良きアドバイスを。

補足ですが、受注管理のできる物を製作しようとしています。

受注管理をクエリで製作してみました。
その中で、ルックアップを使って、得意先、製品情報等を入力出来る様しましたが、得意先を先に指定すると、製品情報の所のルックアップが各得意先別の製品情報のテーブルから選べる一覧にしたいのです。

言いたい事わかるでしょうか。?

Aベストアンサー

う~ん、言いたいことは判りますが・・・回答していることが理解できるかは、別で、とりあえず回答してみるということで・・・

例の通り
> 得意先を先に指定すると、製品情報の所のルックアップが・・・
と、すれば
まずは、「製品情報」のコンボボックスの「値集合ソース」にフォーム上の「得意先」を条件に抽出可能な様にSQLを作る
(ビルダーを使えば簡単に出来ます)
現在のままでは、「得意先」を変更しても、初期にあった「得意先」で抽出されたものから、「値集合ソース」が更新されないので・・・
「製品情報」の「フォーカス取得時」に

Private Sub [製品情報のコントロール名]_Enter()
ME.[製品情報のコントロール名].Requery
End Sub

と記述、これで「製品情報」のコンボボックスが「フォーカス取得」するたびに、先に設定した「得意先」を条件とした「集合ソース」のリストを更新します

で、理解可能ですか?

Qaccess2010 フィールド名変更し別テーブル作成 教えてください。 既存テーブル:AAA 既存

access2010 フィールド名変更し別テーブル作成








教えてください。
既存テーブル:AAA
既存フィールド:あああ

新規テーブル:BBB
新規フィールド名:かかか

AAAのレコードを変えずにテーブル名、フィールド名を変え、別テーブルとし作成するクエリが作りたいです。

SQLの文をベタに教えて頂けるとありがたいです。よろしくお願いします。

Aベストアンサー

こちらの続きということで。
https://oshiete.goo.ne.jp/qa/9534989.html

テーブル作成クエリができているなら

フィールド名「あああ」のところを
「かかか: あああ」に変えれば OK。
フィールドを「*」にしていたらできない(と思う)。

Q一つのテーブルの全てのフィールドを一気に半角にする方法

テーブル1に
フィールド1、フィールド2、フィールド3・・・と多数のフィールドがあり、
全ての全角文字を半角にしたいのですが
更新クエリで

UPDATE テーブル1 SET テーブル1.フィールド1 = StrConv([テーブル1]![フィールド1],8);
UPDATE テーブル2 SET テーブル2.フィールド2 = StrConv([テーブル2]![フィールド2],8);

とフィールドつづやってくしかないですかね?

もっと効率のいい方法があれば教えてください!
よろしくお願い致します。

Aベストアンサー

SET には複数の式をカンマで区切って記述できます。
なので
update テーブル1
set
テーブル1.フィールド1 = StrConv([テーブル1]![フィールド1],8),
テーブル1.フィールド2 = StrConv([テーブル1]![フィールド2],8),
テーブル1.フィールド3 = StrConv([テーブル1]![フィールド3],8)
;
です。
(結局、全フィールド記述ですね)

Qアクセス フィールド名変更と別テーブル作成 access2010です。 既存テーブル名:AAA 既存

アクセス フィールド名変更と別テーブル作成



access2010です。

既存テーブル名:AAA
既存フィールド名:あああ

これをレコード内容、型式を変えずに別の新テーブルに新フィールド名で作りたいです。

新テーブル名:BBB
新フィールド名:かかか

よろしくお願いします。

Aベストアンサー

テーブルを構造とデータを含めてコピーして、フィールド名を変えればよいのでは?

Qアクセス-テーブルの複数のフィールド名をあたらしいフィールドの項目にしたい

初めて質問させていただきます。


現在、アクセスで次のような表を作っています。

年度 地域 品名 4月 5月 6月 7月・・・
2001 日本 米  100 60  85 76 ・・・
2002 日本 米  150 45 95 98 ・・・
2001 中国 餃子 678 234 983 876・・・

(※一番上の行はフィールド名です。)

このテーブルを

年度 地域 品名 月  量
2001 日本 米  4月 100
2001 日本 米  5月 60
2001 日本 米  6月 85
2001 日本 米  7月 76
・・ ・・ ・・ ・・ ・・

のように、まとめなおせないでしょうか?

データの入力は上の表の様式で行い、自動的に下の
表が生成できるようにしたいと考えています。

上の表は、レポートで使用するために保存しておき、
また、別形式のレポートを出力するためにこのような
変換を行ないたいと思っています。
よろしくお願いします。

Aベストアンサー

逆ならクロス集計クエリがあるのですけどね...
一度エクセルにデータをエクスポート(Sheet1)
でSheet2上で
A2=OFFSET(Sheet1!A$2,INT((ROW()-2)/12),0)+IF(LEFT(D2,LEN(D2)-1)*1<4,1,0)
C2=OFFSET(Sheet1!B$2,INT((ROW()-2)/12),0)
D2=OFFSET(Sheet1!C$2,INT((ROW()-2)/12),0)
E2=OFFSET(Sheet1!$D$1,0,MOD(ROW()-2,12))
F2=OFFSET(Sheet1!D$2,INT((ROW()-2)/12),MOD(ROW()-2,12))
このSheet2をインポート

※A列は後半に1月~3月が有るので年度を年に変更が必要だと思いましたので+1する設定を付けています。


人気Q&Aランキング

おすすめ情報