- ベストアンサー
アクセス フィールドの追加
今アクセスでデータベースを作っている、超初心者です。 クエリであるフィールドを追加したいのですが、そのフィールドの作り方がわからないので質問させていただきます。 まず、下記のようなテーブルがあるとします。(データの型は共にテキスト型です) 【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_中国 こんな感じで作りたいのですが、どのようにすればいいでしょう? どなたかお願いします。
- みんなの回答 (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
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)テーブルにデータ作成段階でフィールドを新設するときの話か、 (2)既製テーブルには既にそのフィールドがあり、クエリの結果でnewcodeフィールドのデータを、クエリの結果に表示したいのか。 どちらも質問する程度の問題でなく、後者ならデザインビューでテーブルフィールド表示部からそのフィールドを新しい列にD&Dして、「表示」行にチェックを入れるでよいのでは。 勘違いしてるかな?
お礼
質問の意味が不明の中アドバイスありがとうございました。
- toku8
- ベストアンサー率26% (64/246)
まず テーブル(デザイン画面で) へ newcode を追加します 次に 更新クェリーを新作して 【newcode】のところへは [code] & "_" & [国名] と 指定します
お礼
回答ありがとうございました。
お礼
モジュールまで教えていただきありがとうございました。 結果的にクエリでnewcode: [code] & "_" & [国名]を追加したらできました。 いずれ、教えていただいたモジュールも利用してやってみたいと思います。