Array Formulas in Conditional Formatting of Excel XML Spreadsheet files?Excel通常将条件格式设置公式视为数组公式,除非从Excel 2002/2003 XML电子表格文件加载它们。 这只是Excel 2002/2003 XML电子表格格式的问题……本机Excel格式可以正常工作,而较新的Excel 2007 XML格式(xlsx)也可以。 加载电子表格后,可以通过选择格式范围,进入"条件格式"对话框并单击"确定"来使其正常工作,但这只能解决会话问题。 测试用例: 在新表中输入以下内容:
在单元格A1:C1(您选择的漂亮颜色格式)上创建此条件格式公式:
这是一个数组公式,只要它们中的任何一个具有" N"并且" N"下方的第2行中的单元格等于当前列第3行中的单元格,就会为A1,B1和C1激活。 (这已经从真实的业务电子表格中简化了。对于测试用例的复杂性,很抱歉,我试图在此处找到一个更简单的测试用例。) 它的工作原理是...您可以根据需要更改N或x的格式,格式工作正常。 将其另存为XML电子表格。关闭Excel,然后重新打开文件。现在格式已损坏。现在,仅当A1为" N"并且A2与A3,B3或C3相同时,您才可以激活条件格式。 B1,B2,C1和C2的值对格式没有影响。 现在,选择A1:C1并查看条件格式公式。与以前完全相同。点击条件格式再次开始起作用,并且将在打开文件的整个会话期间起作用。 考虑的解决方法: 以本机(BIFF)Excel格式提供文件。这些电子表格不是通过一种选择,而是由Web服务器动态生成的,这只是我们系统动态生成的数十种工作簿中的一种。 提供Excel 2007本机XML格式(xlsx)的文件。不能选择,当前用户群没有Office 2007或兼容性插件。 要求用户选择范围,进入条件格式对话框,然后单击在这种情况下,老练的用户不是一种选择。 要求用户打开XML电子表格,另存为本机XLS,关闭,然后重新打开XLS文件。这行不通!如果格式是从XML文件中加载的,则格式将保持本机XLS格式。如果在保存之前执行了上述(3),则XLS文件将正常工作。 我最终重写了条件格式以不使用数组公式。因此,我猜这在某种程度上是"可以回答的",但它仍然是Excel 2002/2003处理XML文件时的一个未记录的(即使模糊的)错误。 我试图重现您描述的问题。这是我发现的。
我还为每个测试添加了一个简单的条件格式公式。在每种情况下,保存文件,关闭Excel并重新打开文件后,它都能按预期工作。 因此,答案似乎是在保存文件时使用标准的Excel 2003文件格式。 顺便说一句,这是一个非常奇怪的格式公式。很难想象您将如何使用它。它必须是一个非常具体且不寻常的业务案例。我还感觉到您的帖子中缺少某些内容。 (我不是在指责您不诚实,只是想知道您是否缩短了可读性的公式。)如果这不是您所使用的确切公式,请使用完整的公式编辑您的原始帖子,我很乐意重温此问题。
您可以在以下页面上找到一些教程视频,以自助学习条件格式问题: |