| 
    
     |  | 3つのworkbookは、すべて開いているもの また、AAA.xls、BBBxlsのL列に重複がないものとして、
 
 AAA.xls、BBBxls それぞれのL列を見ていって、""でなければ、
 その行をコピーして新規ブックに貼り付ける。
 (配列に入れて一気にはき出した方が速いと思います。)
 
 最後に並べ替えをする。
 
 新規ブックに
 
 Sub test()
 Dim WB1 As Workbook
 Dim WB2 As Workbook
 Dim NWB As Workbook
 Dim r As Range
 
 Set WB1 = Workbooks("AAA.xls")
 Set WB2 = Workbooks("BBB.xls")
 Set NWB = ThisWorkbook
 
 Application.ScreenUpdating = False
 With NWB.Sheets("Sheet1")
 .Cells.Clear
 .Range("A1:L1").Value = WB1.Sheets("Sheet1").Range("A1:L1").Value
 End With
 With WB1.Sheets("Sheet1")
 For Each r In .Range(.Cells(2, "L"), .Cells(.Rows.Count, "L").End(xlUp))
 If r <> "" Then
 r.Offset(, -11).Resize(, 12).Copy NWB.Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1)
 End If
 Next
 End With
 With WB2.Sheets("Sheet1")
 For Each r In .Range(.Cells(2, "L"), .Cells(.Rows.Count, "L").End(xlUp))
 If r <> "" Then
 r.Offset(, -11).Resize(, 12).Copy NWB.Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1)
 End If
 Next
 End With
 With NWB
 .Sheets("Sheet1").Range("A1").CurrentRegion.Sort Key1:=.Sheets("Sheet1").Range("A2"), _
 Order1:=xlAscending, Header:=xlGuess
 End With
 Application.ScreenUpdating = True
 End Sub
 
 |  |