Excel 基于其他工作表的独立条件格式

Excel 基于其他工作表的独立条件格式,excel,vba,formatting,conditional-statements,Excel,Vba,Formatting,Conditional Statements,我已经为仓库创建了库存管理文档。它有一个名为“IN”的工作表和一个名为“formulas”的工作表。在“公式”表中,我创建了一个复杂的公式(嗯……无论如何都相对复杂),用于计算我的库存非常低以至于我需要下订单的点(再供应点) 在“IN”工作表上,我显示了我(任何给定项目)的库存量。现在,除非我进入“公式”页面,否则没有其他方法来判断我的“IN”存储是否足够(相对于重新订购点) 我想做的是: 我想根据D4到D1000(独立)是否小于或等于“公式”N10到N36862中的对应单元格(相隔37个单元格

我已经为仓库创建了库存管理文档。它有一个名为“IN”的工作表和一个名为“formulas”的工作表。在“公式”表中,我创建了一个复杂的公式(嗯……无论如何都相对复杂),用于计算我的库存非常低以至于我需要下订单的点(再供应点)

在“IN”工作表上,我显示了我(任何给定项目)的库存量。现在,除非我进入“公式”页面,否则没有其他方法来判断我的“IN”存储是否足够(相对于重新订购点)

我想做的是:

我想根据D4到D1000(独立)是否小于或等于“公式”N10到N36862中的对应单元格(相隔37个单元格),将A4到A1000(独立)之间的每个单元格的背景色更改为红色

例如: 库存名称(A4)是其常规颜色,因为库存量(D4)大于公式工作表(单元格N10)上指示的再供应点

换言之: A4(常规颜色),因为D4>公式!N10

同时 A5(红色)因为D5“公式!N84”

等等

我之所以需要VBA来执行此操作,是因为“公式”工作表上的重新提供点(如您在示例中所看到的)相隔37个单元格,并且因为有1000行,通过条件格式菜单手动执行此操作需要几天时间(我没有工作时间来执行此操作)

我打算用VBA为第一个库存行(A4)编写一个代码,然后为每个库存行复制它,使用Excel更改这些行的值(我知道以前是怎么做的,这很棘手但可行)。如果有人有更好的主意,请务必告诉我:)


我已经尝试了20多种不同的方法,这些方法都是基于我在网上找到的,但是我还没有破解这些代码。我仍然没有发现有人尝试做与此完全相同的事情,因此解释不同的方法以满足我的需要被证明是极其困难的。

我认为,您仍然可以使用条件格式。 您需要添加适用于A4:A1000的条件格式,并将其设置为“格式化此公式为真的单元格”(即条件格式>新规则>使用公式)。 公式是这样的

=$D4<=INDEX(formulas!N:N, ROW($D4)*37-138)

=$D4我认为,您仍然可以使用条件格式。
您需要添加适用于A4:A1000的条件格式,并将其设置为“格式化此公式为真的单元格”(即条件格式>新规则>使用公式)。
公式是这样的

=$D4<=INDEX(formulas!N:N, ROW($D4)*37-138)

=$D4为什么不在“公式”选项卡上添加一列,用于提取ColN值并执行必要的计算?那么你的条件格式就很简单了。你好,蒂姆,谢谢你抽出时间。我没有这样做的原因是,我仍然需要单独引用1000个单元格来创建您描述的列。此外,我在“公式”页面上已经有很多信息,如果可以避免的话,我不想再添加更多信息。我想使文档尽可能容易理解(用户无需了解excel即可对其进行插值)。为什么不在“公式”选项卡上添加一列,用于提取ColN值并执行必要的计算?那么你的条件格式就很简单了。你好,蒂姆,谢谢你抽出时间。我没有这样做的原因是,我仍然需要单独引用1000个单元格来创建您描述的列。此外,我在“公式”页面上已经有很多信息,如果可以避免的话,我不想再添加更多信息。我想使文档尽可能容易理解(用户无需对excel有太多了解即可对其进行解释);
INDEX()
函数通过输入要查看的范围返回单元格的值,然后将行和列值作为单独的坐标-在这种情况下,您告诉它查看公式表的N列,公式的另一部分计算将在哪一行找到对应的值。谢谢Spencer,我感谢你的努力。不幸的是,这不起作用。我准确地输入了公式,但得到了错误的答复。话虽如此,*37-138从何而来?啊,抱歉,是什么错误?
*37-138
旨在为每个对应的值返回正确的行(
*
表示乘法,以及4 x37-138=10、5 x37-138=47、6 x37-138=84等),如果这有意义的话?也许可以尝试在开始时输入公式,但不输入
=
,如果工作表名称完全错误,例如,在开头有一个大写字母,这会有所不同;
INDEX()
函数通过输入要查看的范围返回单元格的值,然后将行和列值作为单独的坐标-在这种情况下,您告诉它查看公式表的N列,公式的另一部分计算将在哪一行找到对应的值。谢谢Spencer,我感谢你的努力。不幸的是,这不起作用。我准确地输入了公式,但得到了错误的答复。话虽如此,*37-138从何而来?啊,抱歉,是什么错误?
*37-138
旨在为每个对应的值返回正确的行(
*
表示乘法,以及4 x37-138=10、5 x37-138=47、6 x37-138=84等),如果这有意义的话?也许可以尝试在开始时输入公式,但不输入
=
,如果工作表名称完全错误,例如,在开头有一个大写字母,这将产生不同。