曾经疯狂地搜索,但是找不到我想要的东西。
A列:一些员工(部分名单)
E列:所有员工(完整列表)
我需要在C列中填充不在A列中的所有其他员工(将A列与E列进行比较,以将数据拉到不在A列中的C列中)。
我已经尝试过IF,VLOOKUP函数,并且已经接近但不希望C列中有任何空白单元格。
我希望使用VBA代码(因为A和C列链接到外部数据源)并使用VBA填充。
谢谢!
答案 0 :(得分:0)
尝试一下:
Sub test()
Dim LastRowA As Long
Dim LastRowC As Long
Dim LastRowE As Long
Dim i As Long
Dim j As Long
Dim NameNotExist As Boolean
LastRowA =Sheet1.Cells(Sheet1.Rows.Count, "A").End(xlUp).Row
LastRowC = Sheet1.Cells(Sheet1.Rows.Count, "C").End(xlUp).Row
LastRowE = Sheet1.Cells(Sheet1.Rows.Count, "E").End(xlUp).Row
For i = 1 To LastRowE
For j = 1 To LastRowA
NameNotExist = False
If Sheet1.Range("E" & i).Value =Sheet1.Range("A" & j).Value Then
Exit For
Else
NameNotExist = True
End If
Next j
If NameNotExist = True Then
If LastRowC = 1 And Sheet1.Range("C1").Value = "" Then
Sheet1.Range("C1").Value =Sheet1.Range("E" & i).Value
Else:
LastRowC =Sheet1.Cells(Sheet1.Rows.Count, "C").End(xlUp).Row
Sheet1.Range("C" & LastRowC + 1).Value = Sheet1.Range("E" & i).Value
End If
End If
Next i
End Sub