试试这个 VBA 代码,
Sub matchvalues()
Dim i As Long, j As Long
Sheets.Add.Name = "newSheet"
j = InputBox("Enter the value to filter")
Rows("1:1").Copy Sheets("newSheet").Cells(1, 1)
For i = 1 To Cells(1, Columns.Count).End(xlToLeft).Column
If IsError(Application.Match(j, Columns(i), 0)) Then
Sheets("newSheet").Cells(2, i) = ""
Else
Sheets("newSheet").Cells(2, i) = j
End If
Next i
End Sub
此代码将提示必须过滤的值。需要将其作为输入,这将创建一个新工作表并输出值(如果存在)。
如果您只想使用公式来做到这一点,请尝试以下操作。如果您要搜索的值在单元格中E1
,请在单元格中输入以下公式G2
并拖动。
=IF(ISNUMBER(MATCH($E$1,A:A,0)),$E$1,"")
您可以E1
直接更改值以查看更新的结果。希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句