相同的间接公式在不同的计算机中工作方式不同



我创建了一个工作表,它将从同一工作簿中获取原始数据,并将其按正确的顺序、格式放置,并在反映到主表之前对其进行一些计算。然而,昨天当另一个用户打开工作簿时,包含间接错误的公式为该用户返回了错误,而当我打开它时,它运行良好。

这是一个示例公式:

=IFERROR(TIME(LEFT(INDIRECT("RawData!R" & ROW()+16 & "C" & COLUMN(); 0); 2); MID(INDIRECT("RawData!R" & ROW()+16 & "C" & COLUMN(); 0); 4; 2); 0); "")

该公式应该导致";9:00";来自目标细胞;9:00-9:15";。对我来说,它给了我9点,但对另一个用户来说,它给出了一个错误。

进一步研究这个问题,当我在间接值之外输入N((时,单元格显示另一个用户的0:00,这意味着间接值不是返回错误,而是导致时间函数错误的文本。

虽然我可以通过在间接之外使用Value((来解决这个问题,但我想了解为什么会发生这种情况,以使我的公式更加兼容。为什么要在一台电脑(用户(上间接返回文本,在另一台电脑上间接返回数字?

这在我看来很像是一个格式化/区域设置问题:检查单元格的值及其格式化方式。还要检查它们的类型(是时间值还是看起来像时间值的字符串值(。在许多情况下,后者可能源自对齐(Excel习惯于将数字/日期/时间向右对齐,而字符串通常向左对齐(。

最新更新