简介
我有一张桌子上有50多个用户和他们安装的软件,其中有180多个不同的软件名称。我也有一个70标准软件的列表。我想知道最好的方法是找出哪个软件安装在每个用户的标准旁边。
问题
因此,基本上,我想把标准软件从表格中减去,然后再加上额外的软件。我正在使用Excel 2016。
示例
我已经做了一个简化的例子来解释。



发布于 2018-01-19 09:42:47
Excel (No )中的一个答案是创建一个具有相同标题的新工作表,然后在表的每个单元格中添加一个公式:
=IF(COUNTIF(Standard!$A:$A;Sheet1!A2)>0;"";Sheet1!A2)在我的示例中,名为" Standard“的工作表包括您的示例中的标准软件,名为"Sheet1”的工作表是您的第一个工作表。
如果您需要一个VBA解决方案,下面的工作如下:
Sub Extract_Standard()
Dim RowsToProcess As Long
RowsToProcess = ActiveCell.SpecialCells(xlLastCell).Row
Dim LastCol As Long
LastCol = Cells(1, Columns.Count).End(xlToLeft).Column
Dim a As Integer
Dim i As Integer
For i = 1 To LastCol
For a = 1 To RowsToProcess
If Excel.WorksheetFunction.CountIf(Sheets("Standard").Range("$A:$A"), Cells(a, i).Value) > 0 Then
Cells(a, i).ClearContents
End If
Next a
Next i
End Subhttps://stackoverflow.com/questions/48337543
复制相似问题