excel - 相同的间接公式在不同的计算机中工作方式不同
问题描述
我创建了一个工作表,它将从同一个工作簿中获取原始数据,并将其按正确的顺序、格式并对其进行一些计算,然后再将其反映到主表中。但是,昨天当另一个用户打开工作簿时,包含间接为用户返回错误的公式,当我打开它时,它工作正常。
这是一个示例公式:
=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:15”的目标单元格中得到“9:00”。对我来说,它给了我 9:00,但对于其他用户,它给出了一个错误。
进一步研究这个问题,当我在间接函数之外输入 N() 时,单元格为其他用户显示 0:00,这意味着间接函数没有返回错误,而是返回导致时间函数错误的文本。
虽然我可以通过在间接之外使用 Value() 来解决问题,但我想了解为什么会发生这种情况以使我的公式更加兼容。为什么会在一台 PC(用户)上间接返回文本,而在另一台 PC(我的)上返回一个数字?
解决方案
这在我看来很像一个格式/语言环境问题:检查单元格的值及其格式。还要检查它们的类型(是时间值还是看起来像时间值的字符串值)。在许多情况下,后者可能源自对齐方式(Excel 习惯于将数字/日期/时间向右对齐,而字符串通常向左对齐)。
推荐阅读
- python - 使用计算修改 xarray 列
- spring - Spring Integration DSL如何将拆分消息路由到不同的并发流?
- r - 按区间对数值向量进行分类,也包括单个值
- bash - 从与 C 不同的目录中的批处理文件中使用 cygwin 启动 shellscript:
- r - 从R中的向量索引data.frame
- c# - 不包含构造函数和不可调用的成员 C#
- r - 在 searchK 计算中使用 dfm
- python - Go 的方式为有符号整数执行 python 的 int.from_bytes
- spring-data-jpa - org.springframework.dao.EmptyResultDataAccessException:不存在 id Y 的类 X 实体
- firebase - 如何知道一个项目在firebase颤振的数组中重复了多少次?