• ベストアンサー

アクセス フィールドの追加

今アクセスでデータベースを作っている、超初心者です。 クエリであるフィールドを追加したいのですが、そのフィールドの作り方がわからないので質問させていただきます。 まず、下記のようなテーブルがあるとします。(データの型は共にテキスト型です) 【code】  【国名】  111    日本  111    日本   111    中国  111    中国   121    アメリカ  121    アメリカ  123    日本  123    日本  123    中国 これに【newcode】という名のフィールドを追加したいのです。 例としては 【code】  【国名】    【newcode】  111    日本     111_日本  111    日本     111_日本  111    中国     111_中国  111    中国     111_中国  121    アメリカ   121_アメリカ  121    アメリカ   121_アメリカ  123    日本     123_日本  123    日本     123_日本  123    中国     123_中国 こんな感じで作りたいのですが、どのようにすればいいでしょう? どなたかお願いします。

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

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.3

クエリでワンステップで作る方法はなさそうです。 #1の回答とは別の方法をとると、 クエリで、newcode: [code] & "_" & [国名]という式のフィールドを追加して、テーブル作成クエリに変更すると、お望みの内容の新規テーブルが出来ます。 VBAでワンステップでやった気分になりたいなら、下記で出来ると思います。元のテーブルを書き換えますので、バックアップを取ってから試行してください。 '☆標準モジュール Sub test() Dim mySQL As String mySQL = "ALTER TABLE Table1 ADD COLUMN newcode TEXT(255);" DoCmd.RunSQL mySQL mySQL = "UPDATE Table1 SET Table1.newcode = 'code' & '_' & '国名';" DoCmd.RunSQL mySQL End Sub

rie78
質問者

お礼

モジュールまで教えていただきありがとうございました。 結果的にクエリでnewcode: [code] & "_" & [国名]を追加したらできました。 いずれ、教えていただいたモジュールも利用してやってみたいと思います。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

(1)テーブルにデータ作成段階でフィールドを新設するときの話か、 (2)既製テーブルには既にそのフィールドがあり、クエリの結果でnewcodeフィールドのデータを、クエリの結果に表示したいのか。 どちらも質問する程度の問題でなく、後者ならデザインビューでテーブルフィールド表示部からそのフィールドを新しい列にD&Dして、「表示」行にチェックを入れるでよいのでは。 勘違いしてるかな?

rie78
質問者

お礼

質問の意味が不明の中アドバイスありがとうございました。

  • toku8
  • ベストアンサー率26% (64/246)
回答No.1

まず テーブル(デザイン画面で) へ newcode を追加します 次に 更新クェリーを新作して 【newcode】のところへは [code] & "_" & [国名] と 指定します

rie78
質問者

お礼

回答ありがとうございました。

関連するQ&A

専門家に質問してみよう