我正在使用PowerQuery将xml文件下载到Excel电子表格中。下载很好,但是,我想要使用的数据是一个字符串(带有“常规”数据类型。)
有没有办法自动将其转换为数字,或将其转换为SUM公式中的数字,现在基本= SUM(U2:U20)不起作用(由于字段被视为文本。
xml文件将被一些人每天多次下载,所以我可以将解决方案直接放入电子表格本身,这将是非常好的。
更新 我尝试过使用Value()函数,特别是
=SUM(VALUE(U2:U20)) (returns #value)
以及
=VALUE(SUM(U2:U20)) (returns zero)
以及 = SUM(N(U2:U20))(返回#value) 以及
=N(SUM(U2:U20)) (returns zero)
似乎值在范围内不起作用 - 你会认为它会。
答案 0 :(得分:2)
使用公式=Value()
将表示数字的文本字符串转换为数字。
如果文本无法转换,请使用=IfError()
处理错误。
另一种选择是使用=N()
将文本转换为数字。使用此公式,如果无法转换为数字,则返回0.有关详细信息,请参阅N Formula。
这些公式仅适用于单个单元格。因此,如果您有一列数字作为文本,则需要使用= Value()列来单独转换每个单元格。然后对第二列的结果使用= Sum()。
答案 1 :(得分:0)
在电子表格的未使用单元格中输入“1”(不带引号)。复制该单元格。 选择包含下载数据的范围。从鼠标右键单击菜单中选择“选择性粘贴” 并选择粘贴:值和操作:乘法。
此操作应将数据转换为数字,因此您不仅可以对其进行总结,还可以在必要时对其进行数字排序。
当然,您可以使用宏来自动化流程:
Sub Macro1()
Range("J18").Value = 1
Range("J18").Copy
Range("K1:K6").PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply
Application.CutCopyMode = False
End Sub