
5个回答
展开全部
这种问题,公式就算了。直接VBA吧:
Sub test()
Dim arr, brr
arr = Range("a1").CurrentRegion
brr = Range("d1").CurrentRegion
Dim i, j As Integer
For i = 2 To UBound(brr)
For j = 2 To UBound(arr)
If InStr(brr(i, 1), arr(j, 1)) <> 0 Then
brr(i, 2) = brr(i, 2) + arr(j, 2)
End If
Next j
Next i
[e1].Resize(UBound(brr)) = Application.Index(brr, , 2)
End Sub
Sub test()
Dim arr, brr
arr = Range("a1").CurrentRegion
brr = Range("d1").CurrentRegion
Dim i, j As Integer
For i = 2 To UBound(brr)
For j = 2 To UBound(arr)
If InStr(brr(i, 1), arr(j, 1)) <> 0 Then
brr(i, 2) = brr(i, 2) + arr(j, 2)
End If
Next j
Next i
[e1].Resize(UBound(brr)) = Application.Index(brr, , 2)
End Sub
更多追问追答
追答
说实在的,如果项目很多,也估计只有VBA能帮你快速解决了。
BTW:问Excel问题不截行列号,可能很多人都会直接放弃帮你的念头了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询