Sub copy_by_zzllrr()
Application.ScreenUpdating = False
Dim n, m, a
n = Range("A1").End(xlDown).Row
For i = 2 To n
m = Range("D" & i)
a = Columns(1).Find("*", , , , 1, 2).Row
Range("A" & i & ":D" & i).copy Range("A" & a + 1 & ":D" & a + m)
Next i
Rows("2:" & n).Delete
End Sub
这个用vba来处理非常简单,看下私信。