Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


74605 / 76732 ←次へ | 前へ→

【6589】Re:2つのシートで比較
回答  ichinose  - 03/7/12(土) 9:10 -

引用なし
パスワード
   ▼ヒダリ さん:
おはようございます。
>はじめまして。
>過去ログになかったので質問させて頂きます。
>以下のようなマクロを作っているのですが、どうしてもうまくいきません。
>よい方法がありましたらご教授お願いします。
>
>シート1
> A    B 
>5241 125500011
>3528 135522443
>2258 125500012
> :    :
>
>シート2
> A    B
>4968
>2258 
>6698
> :
>
>↑の2つのシートで両方のA列を比較し、シート2のA列にシート1のA列の
>コードがあれば、シート2のB列にシート1の対応するB列のコードを
>貼っていくという作業をシート2のデータがなくなるまで行いたいのです。
>同じコードはシート上のどこかのセルにあればよく(同じ行である必要はない)、
>シート2には、同じコードが複数ある場合があります。
>
>宜しくお願いします。
シート1、シート2共に1行目からデータが入っていた場合の例です。
'================================================
Sub main()
  Dim vlookup_func As String
  Dim rng2 As Range
  With Worksheets("シート1")
   vlookup_func = "vlookup(rc[-1],シート1!" & _
           .Range(.Cells(1, 1), _
           .Cells(.Rows.Count, 1).End(xlUp)) _
           .Resize(, 2) _
           .Address(, , xlR1C1) & _
           ",2,false)"
   End With
  With Worksheets("シート2")
   Set rng2 = .Range(.Cells(1, 1), _
         .Cells(.Rows.Count, 1) _
         .End(xlUp)) _
         .Offset(0, 1)
   End With
  With rng2
    .Formula = "=if(iserror(" & _
         vlookup_func & "),""""," _
         & vlookup_func & ")"
    .Value = .Value
    End With
End Sub

シート名の最後の数字が半角か全角かわかりませんが、
ヒダリさんのシート名に合わせてください。

0 hits

【6587】2つのシートで比較 ヒダリ 03/7/11(金) 22:57 質問
【6588】Re:2つのシートで比較 Hirofumi 03/7/12(土) 8:46 回答
【6589】Re:2つのシートで比較 ichinose 03/7/12(土) 9:10 回答
【6600】Re:2つのシートで比較 ヒダリ 03/7/14(月) 14:02 お礼

74605 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free