永发信息网

Excel vba如何通过条件列号查找内容 1、E2:E15为条件列号(已知列号名称) 2

答案:2  悬赏:40  手机版
解决时间 2021-02-15 11:35
  • 提问者网友:回忆在搜索
  • 2021-02-15 02:33
Excel vba如何通过条件列号查找内容
1、E2:E15为条件列号(已知列号名称)
2、G1:U1为要查找的列号(有内容的列号)
通过条件列号找出要查找内容的列
3、D2:D15为要查找的内容(条件内容)
4、G2:U15为每列的内容
再通过条件内容找出该列的内容在哪一行
5、最后该行B列递增入值1

例:(已知列号名称E2=B)找到(有内容的列号M1=B)
从这里判断出M列有内容查找
(条件内容D2=㎏)在M列找出㎏
(如果㎏在第8行,哪么给B列第8单行递增入1值
最佳答案
  • 五星知识达人网友:爱难随人意
  • 2021-02-15 03:11
Dim C_Address, D_Address
[B2:B15] = ""
If [e15].End(xlUp).Row > 1 Then
For i = 2 To [e15].End(xlUp).Row
Set c = [G1:U1].Find(Range("E" & i), , , xlWhole)
If Not c Is Nothing Then
C_Address = c.Address
temp = ""
Do
temp = temp & Split(c.Address, "$")(1) & ","
Set c = [G1:U1].FindNext(c)
Loop While Not c Is Nothing And c.Address <> C_Address
End If
If temp <> "" Then
arr = Split(Left(temp, Len(temp) - 1), ",")
For j = 0 To UBound(arr)
Set D = Range(arr(j) & "2:" & arr(j) & "15").Find(Range("d" & i), , , xlWhole)
If Not D Is Nothing Then
D_Address = D.Address
Do
Range("B" & D.Row) = Range("B" & D.Row) + 1
Set D = Range(arr(j) & "2:" & arr(j) & "15").FindNext(D)
Loop While Not D Is Nothing And D.Address <> D_Address
End If
Next
End If
Next
End If
全部回答
  • 1楼网友:琴狂剑也妄
  • 2021-02-15 04:21
搜一下:Excel vba如何通过条件列号查找内容 1、E2:E15为条件列号(已知列号名称) 2
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯