- ベストアンサー
Accessでvlookupみたいなことはできますか。
Accessで、2つのテーブルがあります。 touroku_m テーブル……ID、登録No、氏名、携帯メール keitai_m テーブル……ID、登録No、携帯メール keitai_mの方には、携帯メールフィールドに、アドレスが入力されています。 touroku_mテーブルの携帯メールフィールドは空なので、登録Noを比較して、共通だったらkeitai_mに入力してある携帯メールアドレスをtouroku_mに一気に入れたいのです。 こんなことは可能でしょうか。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
レス遅くなってすみません。 えっと、追加クエリはテーブル名を見て追加しますので、追加クエリが実行されるときにtouroku_mの名前のテーブルに追加されます。 なので最初touroku_mという名前のテーブルが名前を変えると、それには追加されませんが、またtouroku_mに戻せば追加されるようになりますよ。 要は追加クエリを実行したいテーブルの名前をtouroku_mにしとけば大丈夫です。
その他の回答 (4)
- ape5
- ベストアンサー率57% (85/148)
少し、面倒ですが結果的にはできます。 前準備として、 1.touroku_mテーブルをコピー 2.テーブル構造のみを貼り付けます。 3.テーブル名をtouroku_newとしたとします。 4.クエリに移り、「デザインビューでクエリを作成する」を選ぶ 5.上段のテーブルを表示するところで右クリックしSQLビューを選択 6.以下のSQL文を書き込む。 INSERT INTO touroku_new ( ID, 登録No, 氏名, 携帯メール ) SELECT touroku_m.ID, touroku_m.登録No, touroku_m.氏名, keitai_m.携帯メール FROM touroku_m LEFT JOIN keitai_m ON touroku_m.登録No=keitai_m.登録No; 実行すれば、touroku_newのテーブルに欲しいデータが入ります。 7.touroku_mの名前を変更し、touroku_newの名前をtouroku_mに書き換える。 以上 SQL文の内容が知りたいのであればレスください。
お礼
コメントありがとうございます。 早速やってみようと思ってひとつ気になったことがあります。 touroku_m テーブルには、追加クエリを使ってデータが追加されることが あるのですが、追加クエリに設定してある最初の touroku_m を別の名前に すると、追加クエリもこちらに対して行われることになりますか? (試してみればいいんですね(^^;)
> こんなことは可能でしょうか。 とお訊きになっているのでは、Accessを使っている意味がありません。 お訊ねのようなことは「更新クエリ」で実現可能です。 言わばクエリ自体が「vlookup」のようなものなのです。 さらにいえば、Access自体がより強力な「vlookup」を実現する為の道具なのです。 もし、Accessを正しく使おうとするなら「集計表」という概念は捨て、「巻物を横にしたものの一部を見ている」というイメージを持ってください。 具体的な方法は質問者さんのAccessに対する知識レベルでは、ここに書いても無理と思われますので(失礼はご勘弁を...オートマ車しか知らない人に「クラッチが..」と説明するのに似てます)、 Accessの入門書を入手され「クエリ」(特に「更新クエリ」)を参照してみてください。
- CHRONOS_0
- ベストアンサー率54% (457/838)
vlookupみたいなことがやりたいということは Excelからの転向者でしょうか Excelは表計算、Accrssはデータベース 見掛けは同じような表を使いますが、まったく異なるジャンルのソフトです Excelの延長で考えていては絶対にAccessは理解できません まずvlookupですが、Access(DB)では複数のテーブルを使って 物事を表すというのが基本ですから、 他のテーブルを参照するのに関数を使ったりしません もっと強力なクエリというものがあります また、データはひとつのテーブルのみで管理するというのが基本です つまり >keitai_m テーブル……ID、登録No、携帯メール こういうテーブルに登録Noとメルアドが登録されているのであれば >touroku_m テーブル……ID、登録No、氏名、携帯メール には携帯メールフィールドを設けません 登録NOで結合したクエリを作ればメルアドはkeitai_mからいつでも引っ張ってくることができます ということでこの質問そのものが無意味ということになりますね Accessをやろうとお考えならば、Excelのことは忘れて 1からきちんと入門書等で勉強されることをお勧めします 特にテーブルやクエリについてよく勉強してください
お礼
ありがとうございます。 もともと空白になっていた携帯メールアドレスのデータをエクセルで もらったので、それを一気に流し込めないかと虫のいいことを考えて いたのですが、無理のようですね。
- gura_
- ベストアンサー率44% (749/1683)
「選択クエリ」を使えば、ご希望のようなことは出来ます。↓ http://www.mahoutsukaino.com/ac/ac2002/ac2002/sonota/query/043.htm http://www.moug.net/tech/acopr/0041.htm 二つのテーブルを、「登録No」で「結合」して、必要な「フィールド」を選べば良いでしょう。
お礼
アドバイスありがとうございます。 でも…したいこととちょっと違うみたいでした。
お礼
お礼が遅くなって申し訳ありません。 ついうっかりしてしまいました。m(_ _)m できました。 どうもありがとうございました。