注册 登录
编程论坛 VB6论坛

麻烦大神,帮我解释下这段编程所有内容的意思,谢谢

依恋0305 发布于 2017-10-27 11:56, 983 次点击
Sub 成员梳理()
 ajs = Sheet3.UsedRange
 ald = Sheet6.UsedRange
 abb = Sheet7.UsedRange
   
    xmmc = 0: xmlx = 0: qld = 0
    m = 0: t = 0
   
    Dim acc(500, 3) As String
    Dim ccc(500, 5) As String
   
    '以下是成员相关列拿出来
    For k = 1 To UBound(ald)
      For t = 1 To UBound(ajs)
        If InStr(ajs(t, 21), ald(k, 1)) Then
          ccc(m, 0) = ald(k, 1)
          ccc(m, 1) = ajs(t, 5)
          ccc(m, 2) = ajs(t, 3)
          ccc(m, 3) = ajs(t, 4)
          ccc(m, 4) = ajs(t, 21)
          m = m + 1
        End If
      Next
    Next
  
     For m = m To 500
     ccc(m, 0) = ""
     ccc(m, 1) = ""
     ccc(m, 2) = ""
     ccc(m, 3) = ""
     ccc(m, 4) = ""
     ccc(m, 5) = ""
     Next
     

    Sheet7.[a3].Resize(UBound(ccc), UBound(ccc, 2)) = ccc
End Sub
1 回复
#2
booksoon2017-10-31 09:48
sheet6中的第1列,sheet3中的3,4,5,21列符合要求的复制到sheet7中。规则:sheet6的第1列每一行单元格的值在sheet3的第21列中出现过的行。

这样的程序写得真麻烦,直接调用excel的VLOOKUP函数就很好
1