|
▼ponpon さん、いづみさん今日は。
抽出でやってみました。
試してみてください。
'
'プログラムの流れは、以下の通りです。
'Sheet3に抽出結果を出力し、その結果をSheet1に貼り付けしました。
'
Sub 絞込みコピー貼付()
Dim c As Range
Dim AutoFkey() As Variant
Application.ScreenUpdating = False
Sheets(3).Cells().ClearContents
'-----タイトル行をコピー・貼付
With Sheets(1)
.Range("A5", .Cells(5, 256).End(xlToLeft)).Copy
End With
Sheets(3).Cells(1, 1).PasteSpecial Paste:=xlValues
'-----抽出key格納
With Worksheets("sheet2")
AutoFkey = .Range("A2", .Range("A65536").End(xlUp)).Value
End With
'-----抽出・コピー・貼付
For i = 1 To UBound(AutoFkey, 1)
'-----抽出・コピー
Sheets(1).Range("A4").AutoFilter Field:=2, Criteria1:="*" & AutoFkey(i, 1) & "*"
Sheets(1).AutoFilter.Range.CurrentRegion.Offset(1).Copy
'-----貼付
Sheets(3).Cells(65536, 1).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
Sheets(1).AutoFilterMode = False 'AutoFilterの解除
Next
Paste結果
Application.CutCopyMode = False 'CopyModeの解除
Sheets(1).Select
End Sub
Sub Paste結果()
Lrow = Sheets(1).Cells(65536, 1).End(xlUp).Row
Sheets(1).Rows("5:" & Lrow).ClearContents 'shee1のデータ消去
'
Lrow = Sheets(3).Cells(65536, 1).End(xlUp).Row
Sheets(3).Rows("2:" & Lrow).Copy
Sheets(1).Cells(5, 1).PasteSpecial Paste:=xlValues '結果をsheet1に貼付
End Sub
|
|