電子書籍の厳選無料作品が豊富!

めぐみと申します、エクセルのことではじめて質問させて頂きます。
エクセルのデータをマクロを使って自動仕分けできないかと思ってます。
書籍を購入して自分で試してみようと思ったのですが、どうしてもよくわからなくて質問させて頂きました。
エクセルで以下のような複雑な処理はできるのでしょうか?
もし、できるようでしたらば大変恐縮ですがどのようにしたらできるのか教えて頂けないでしょうか。
お時間ある方でお分かりになる方がいらっしゃいましたら教えていただきたく何卒よろしくお願いいたします。

Sheet1のA列に名前がならんでいます。
Sheet2のA列にも名前が並んでいてB,C,D列には付随する情報が並んでいます。
Sheet1のA列の名前を1つずつ検索して、Sheet2のA列にその名前があるかを確認します。
もし、Sheet1のA列の名前がSheet2のA列にあれば、Sheet2のA列右横のB,C,D列3つのセルの情報をSheet1のA列の文字のB,C,D列にコピーするようにしたいです。

(例)
Sheet1のA列の情報です。
美咲


里奈
美佳


順子
麻衣

彩香
彩花

Sheet2のA,B,C,D列の情報です(申し訳ありません、空白を便宜上「---」にしてます)。
愛------ B型------ 1992------ 4
彩------ A型------ 1994------ 3
美穂---- B型------ 1993------ 2
成美---- O型------ 1994------ 3
沙織---- AB型----- 1995------ 3
麻衣---- AB型----- 1992------ 3
舞------ B型------ 1992------ 4
愛美---- A型------ 1993------ 5
瞳------ A型------ 1994------ 4
彩香---- AB型----- 1995------ 4


マクロの結果、Sheet1のA列が以下のようにしたいです(申し訳ありません、空白を便宜上「---」にしてます)。
美咲
愛------ B型------ 1992------ 4
舞------ B型------ 1992------ 4
里奈---- A型------ 1994------ 3
美佳
彩------ A型------ 1994------ 3

順子
麻衣---- AB型----- 1992------ 3

彩香---- AB型----- 1995------ 4
彩花
※データのないとろこは何もしません。
どうか、お時間ある方でお分かりになる方がいらっしゃいましたら教えていただきたく何卒よろしくお願いいたします。
めぐみ

A 回答 (1件)

わざわざマクロを使うまでもなく、ふつーに関数を入れておけば十分に見えますが。




敢えてマクロで行ってみます

sub macro1()
 on error resume next
 worksheets("Sheet1").select
 with range("B1:D" & range("A65536").end(xlup).row)
  .formula = "=VLOOKUP($A1,Sheet2!$A:$D,COLUMN(),FALSE)"
  .value = .value
  .specialcells(xlcelltypeconstants, xlerrors).clearcontents
 end with
end sub
    • good
    • 0
この回答へのお礼

7543492さま

めぐみです。
こんなに早く回答をくださり本当にありがとうございました。
そして、頂いたマクロですが完璧でした。
わたくしのつたない説明を読んで下さりなおかつ完璧なご回答をくださり本当にありがとうございました。
心から感謝します。
本当にありがとうございました(ハード)(ハード)(ハード)
めぐみ

お礼日時:2012/06/19 22:42

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