CSVデータをファイルから読み込んで 最終行に入れ込む

https://kaze88.hatenablog.jp/entry/2014/02/06/104600

簡易的に 読み込みだけならこうか!

Sub Sample2()
Dim buf As String
Open "C:\Data\Sample.csv" For Input As #1
Do Until EOF(1)
Line Input #1, buf
''読み込んだデータをセルに代入する
Loop
Close #1
End Sub


目的位置(記入最終行後)へのセルコピーが これか!
Public Sub AddNewData()

'既定のデータのフォーマットを追加する

Range("J3:P3").Select

Selection.Copy Cells(ActiveSheet.Rows.Count, 2).End(xlUp).Offset(1)

Cells(ActiveSheet.Rows.Count, 2).End(xlUp).Select

'============================================================
' Excel2003以前のバージョンでのみ使用する場合

' Selection.Copy Range("B65536").End(xlUp).Offset(1)
' Range("B65536").End(xlUp).Select
'============================================================

End Sub

シート1の(A1)にデジカメと表記があり、同じ行のB~Hの列にそれぞれの数字が入っていたとします。

それをシート2のA列の適当な行(例えばA15)にデジカメという表記があった場合に、シート1の(B1)~(H1)の値をシート2の(B15)~(H15)にコピーする方法をご存じな方、教えて下さい。

単純なコピー&ペーストは「マクロの記録」で可能かと思いますが、シート2に「デジカメ」の項目があった場合に、シート1の元データから同じ「デジカメ」の項目を探しだし、コピーしたいのです。


Sub Test()
 Dim R As Long
 Dim myCell As Range

 Sheets("Sheet2").Select

 For R = 2 To Cells(Rows.Count, "A").End(xlUp).Row
  Set myCell = Sheets("Sheet1").Range("A:A").Find(Cells(R, "A").Value, , xlValues, xlWhole)
  If Not myCell Is Nothing Then
    myCell.Resize(1, 9).Copy Cells(R, "A")
  End If
 Next R
End Sub