| 
    
     |  | こんばんは 
 質問に合わせてありますが、ブック名、シート名は適宜変更して試して下さい。
 データが無い場合等のエラー処理は適宜追加して下さい。
 
 Sub test()
 Dim mR As Range
 With Workbooks("ブックA.xls").Worksheets("Sheet1")
 Set mR = .Range("A1", .Cells(.Rows.Count, "A").End(xlUp)).Resize(, 2)
 End With
 With Workbooks("ブックB.xls").Worksheets("Sheet1")
 mR.Copy .Cells(.Rows.Count, "A").End(xlUp).Offset(1)
 With .Range("A1", .Cells(.Rows.Count, "A").End(xlUp)) _
 .Offset(, .Columns.Count - 1)
 .Formula = _
 "=IF(AND(B1="""",COUNTIF(A:A,A1)>1),"""",1)"
 .Value = .Value
 .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
 .Delete
 End With
 .Range("A1").Sort .Range("A1"), xlAscending, Header:=xlNo
 End With
 Set mR = Nothing
 End Sub
 
 
 |  |