如何从 MS Excel 中的一系列数据中仅提取特定的数值?

如何从 MS Excel 中的一系列数据中仅提取特定的数值?

我有一系列数据,比如 a1:a100,其中存在混合的数字和字母值。

我希望只提取 a1:a100 范围内大于 1 且小于 10000000(即介于 1 到 10000000 之间)的数值并将其插入到 b 列中。

我正在附加 Excel 表的快照。

http://i.imgur.com/5qvEdi1.png

我尝试在 b1 中使用这个数组公式,但它没有按我想要的方式工作-

 =IFERROR(INDEX(A5:A100, SMALL( IF(A1:A100>0, ROW()-0, ""), ROW()-0) ), "")

答案1

如果可以使用 VBA:

Alt+ F11,双击ThisWorkbook并粘贴以下代码:

Sub values()

Dim c As Range
i = 1

For Each c In ActiveSheet.Range("A1:A100")
    If IsNumeric(c) And c >= 1 And c <= 10000000 Then
        Cells(i, 2).Value = c
        i = i + 1
    End If
Next c

End Sub

返回到包含您的数字的工作表,按Alt+F8并运行宏。

我没有测试过这个,所以先创建一个备份。

相关内容