如何在 Excel 公式中使用导入的 CSV 中的值?

如何在 Excel 公式中使用导入的 CSV 中的值?

我有一个 Excel 2016 电子表格,使用 CSV 文件作为数据源。我想使用条件格式和公式更轻松地可视化该数据。

问题在于公式和条件格式的作用就好像 CSV 导入的单元格是空的一样。我使用的公式和条件格式规则在“正常”单元格上按预期工作。

以下是一个例子:

在此处输入图片描述

如图所示,单元格I6包含公式=G4+G5I7包含=SUM(G1:G10)。我将列G的类型设置为会计,它自动更改I6I7会计。然而公式返回错误。

这有点违背了导入数据的意义。如何才能将公式和格式规则应用于导入的数据,而无需每次修改源时手动复制?

答案1

我认为 Hannu 对潜在问题的看法是正确的。G 列中的值是左对齐的,这表明 Excel 将它们视为文本。有很多方法可以将它们转换为数字(例如,请参阅如何在 Excel 中将文本转换为数字)。

  1. 如果在给定的工作表上,导入 CSV 数据是一次性操作,您可以就地转换数据。

    • 您可以通过将格式更改为数字来实现这一点,但这不是我喜欢的方法,因为您执行操作的顺序可能会产生影响,您需要注意这一点,所以有时它并不“可靠”。

    • 我更喜欢明确的转换。 CopyPaste Special,选择ValuesAdd是一种方法。

    • 另一种方法是使用Text to columns函数。如果一列仅包含单个值,则用其自身替换该列,但在此过程中数字字符串会被重新存储为数字。

  2. 如果该 CSV 数据被其他 CSV 数据替换,使用一次设置的方法更有效,它适用于 G 列中的任何数据。有两种方法。

    • 一种方法是将 G 列值的显式转换包含在引用这些单元格的所有公式中。这种方法的缺点是使所有公式都变得更加复杂。

    • 更好的解决方案是添加辅助列。您可以使用 H 列(甚至是远程列)来保存转换公式,这样H它始终包含 中的数值G。有很多方法可以做到这一点。

      • 您可以使用 VALUE 函数 ( =VALUE(G2)),或者

      • 执行不改变数值的算术运算(=G2+0=G2*1=G2/1)。

答案2

问题在于小数点分隔符:在 CSV 文件中它是一个点,但由于我的区域设置,Excel 需要逗号。

我将有问题的列中的点替换为逗号,Excel 开始将其读取为数字。

相关内容