・別シートからVlookUp関数を使用して値を入力する
・別シートは毎回自動で作成させるため、シート名を変数
・WorkSheet関数を変数に置き換えて
Sub Sample2()
Dim i As Long, t As Long, Target As Variant '★1
Dim b As String
Dim endrow As Long, S As Long
Dim A As Object, F As Worksheet, E As Object, C As Long
Dim cop As Variant
b = Sheets("②価格集計").Range("U2").Value '★2
For S = 1 To Worksheets.Count '★3
If Worksheets(S).Name = b Then '★★
endrow = Worksheets(S).Range("A" & Rows.Count).End(xlUp).Row + 1 '★4
For i = 3 To endrow
If Worksheets("②価格集計").Range("C" & i).Value <> "" Then
Set A = Worksheets("②価格集計").Range("B" & i)
Set F = Worksheets(b)
Set E = F.Range("A:M") '範囲
C = 13 '列番
Target = WorksheetFunction.VLookup(A, E, C, False) '★5
Worksheets("②価格集計").Range("U" & i).Value = Target '★6
End If
Next i
End If
Next S
End Sub
★1、 Target As Variant
★2、 シート名を項目 VLookUp結果入力箇所
★3、 シートを検索する
★★、 シート名が有れば実行
★4、 検索シートの検索値の最終行取得
★5、 VLookUp関数結果をTargetへ格納
★6、関数結果の値を入力