|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
根据表2中有多名员工,在表1中查找他是否在职或离职,在表2L列显示他的状态。多数人,有字典
下面的代码请大神找找原因
Private Sub CommandButton1_Click()
arr = Sheet1.Range("A1:C" & Sheet1.Range("A65536").End(3).Row)
Set dx = CreateObject("Scripting.Dictionary")
Set dy = CreateObject("Scripting.Dictionary")
For i = 2 To UBound(arr)
If arr(i, 3) = "离职" Then dx(arr(i, 1)) = ""
Next
kx = dx.keys
j = 0
brr = Sheet2.Range("C1:L" & Sheet2.Range("A65536").End(3).Row)
For i = 2 To UBound(brr)
For j = 0 To dx.Count - 1
If brr(i, 1) = kx(j) Then
dy(brr(i, 10)) = "离职"
Else
dy(brr(i, 10)) = "在职"
End If
Next j
Next i
ky = dy.keys
[l2].Resize(dy.Count, 1) = Application.Transpose(ky)
Set dx = Nothing
End Sub
|
|