dポイントプレゼントキャンペーン実施中!

以下のマクロは、マスターシートからB2-B5セルにvlookup関数にて
データを引っ張ってきます。

やりたい事は、マスターシートを別ブックにコピーして
別ブックを参照して、vlookupの値を返したいという事です



C:\Users\2020\OneDrive\マクロ\vlookup.xlsm
シート名:Sheet1

A列 B列
1行目 商品ID 商品名
2行目 01 ステレオ
3行目 02 テレビ
4行目 03 パソコン
5行目 04 該当商品なし


C:\Users\2020\OneDrive\マクロ\vlookup.xlsm
シート名前:マスターシート

A列 B列
商品ID 商品名
1行目 01 ステレオ
2行目 02 テレビ
3行目 03 パソコン



【別ブックの場所】
C:\Users\2020\OneDrive\マクロ\別ブック.xlsm
シート名前:マスターシート

【コード。動きます】設置ブック:C:\Users\2020\OneDrive\マクロ\vlookup.xlsm
Sub vlookuplastline()


On Error Resume Next 'エラー回避
Set myRange = Worksheets("マスターシート").Range("A1:b4") '範囲を定義
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row '最終行まで繰り返し処理
Err.Number = 0
With Cells(i, "A")
.Offset(0, 1) = WorksheetFunction.vlookup(.Value, myRange, 2, False)
If Err.Number <> 0 Then

End If
End With
Next

On Error GoTo 0 'エラー回避を解除

End Sub

A 回答 (1件)

別ブックが開いているならば


>Set myRange = Worksheets("マスターシート").Range("A1:b4") '範囲を定義

Set myRange = Workbooks("別ブック.xlsm").Worksheets("マスターシート").Range("A1:b4")
っとすればできませんか?
一応、エラー発生条件を明示するために、
>On Error Resume Next 'エラー回避
は外してからお試しください。
また、別ブックにマクロが必要でなければ、拡張子はxlsxになります。
    • good
    • 1
この回答へのお礼

お返事ありがとうございます
家に戻り次第、試してみます

お礼日時:2024/06/03 12:54

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A