|

楼主 |
发表于 2022-2-3 09:08
|
显示全部楼层
本帖最后由 vba789 于 2022-2-3 10:22 编辑
Sub test()
Dim arr, brr(), R As Long, i As Long, j As Integer, s As Integer, Rng As Range
Application.ScreenUpdating = False
R = Sheet1.Range("D65536").End(xlUp).Row
Sheet2.Range("A1:H34").ClearContents
If R < 1 Then Exit Sub
arr = Sheet1.Range("D1:D" & R)
ReDim brr(1 To 8, 1 To UBound(arr))
For i = 1 To UBound(arr)
Set Rng = Sheet3.Range("A:A").Find(arr(i, 1))
If Rng Is Nothing Then
Else
For j = 1 To 8
brr(j, i) = Sheet3.Cells(Rng.Row, j)
Next
End If
Next
Sheet2.Range("A1").Resize(UBound(brr, 2), 8) = WorksheetFunction.Transpose(brr)
For s = 2 To 8
If Application.WorksheetFunction.Sum(Cells(i, s)) = 0 Then Cells(i, 1) = "" '这里是第2列至第8列求和,即如果sum("B1:K1")=0,则A1为空,没有达到效果
Next
Set Rng = Nothing
Application.ScreenUpdating = True
MsgBox "导入"
End Sub |
|