Excel – 条件格式 – 插入行

在“适用于”中使用偏移或间接似乎不起作用。 插入行/ s后是否有其他方法可以阻止条件格式化的破坏

我有一个范围的条件格式,例如$ O $ 19:$ O $ 105。 条件是“如果单元格值大于10”,则使用红色进行格式化。

问题是 – 当我在Excel中插入一行时,这个格式范围分裂,我得到2格式化规则。 例如,如果我在第20行插入新行,范围分别为$ O $ 19,$ O $ 21:$ O $ 105和$ O $ 20的2条规则。

通常对于像上面那样的条件,如果规则被分成多个范围,则可能没有关系。 但对于像“突出前十名”这样的条件来说,这会导致不良结果。

我尝试了以下没有太多运气:

  1. 尝试使用间接 – 但Excel似乎解决了公式,并保存格式化规则,因此不符合预期的插入
  2. 尝试使用偏移量 – 这里又一次excel解决了上述范围。

任何人都知道如何编写一个不会因行插入而中断的条件格式?

[编辑]我意识到,插入行不会导致分裂的条件格式规则。 我也复制一行,并粘贴插入行正在做这个。 如果我select特殊的粘贴,只select公式,它的工作正常。

我知道这是一个古老的线程,但这里是另一个超级简单,效果很好的解决scheme。

只需要插入一个新的行或列。 然后select并复制具有正确条件格式的行/列。 先前的特殊项目添加到刚刚创build的新行/列中,然后select“所有合并条件格式”选项。 现在应该自动更新您的条件格式规则。

快乐Excel =)

这是条件格式的一个普遍问题。 如果您插入行或移动东西,Excel将假定您希望条件格式与单元格一起移动,并且您想要以原始格式(或根本没有)插入单元格。

所以它会尽量根据变化来分割格式化的范围。 不幸的是,“最好的”不是很好。 在幸运的情况下,你的格式化规则会被复制,而不会注意到; 在不幸的情况下,他们打破了一些或所有的应用范围。

如果您使用ListObjects(又名“Excel表格”),这尤其是个问题。 插入一些行,对其重新sorting,拖动一些值,然后在下一次查看条件格式列表时,有几十到几百个重复的规则。 (例如: http : //blog.contextures.com/archives/2012/06/21/excel-2010-conditional-formatting-nightmare/ )

根据我的经验,修复混乱的最快方法是删除所有规则并重新创build它们(或不)。

一些附注:

  • 适用范围始终是绝对的。 这是没有办法的。
  • 更糟糕的是,条件格式被视为易失公式,这意味着它们会在很多场合被重新计算(打开另一个文件,滚动等等)。 如果您没有注意到这些分歧,那么他们会在一段时间之后显着减慢整个应用程序的速度。
  • 如果你使用VBA,那么你可能要使用Worksheet_Calculate事件,至less如果你的公式引用了其他工作表(注意名字!)

我试图创build报告时遇到了这个问题 – 一旦完成,他们不需要改变,但是当我创build报告时,我不断添加新行,并且每条新行都将条件格式化。

这绝不是一个好的解决scheme,但是这是我find的最好的方式,而不是诉诸于VBA – 这是:

a)使条件格式规则一次适用于整列或更多列

例如,不要在C2和C17上设置条件格式,而要添加一个额外的列,并在第2行和第17行中写入“this one”,然后将整个列C的格式设置为“如果另一列说”一个'然后应用这种格式“

b)更改适用于只是$ C $ 1:$ C $ 2。

c)进行更改并插入行和东西

d)然后返回并将“应用于”更改为$ C:$ C

这样,当你改变东西并添加东西的时候,条件格式不存在,但是你稍后再把它全部放回去。

如果在以后需要添加更多的行,首先将它从$ C:$ C更改为$ C $ 1:$ C $ 2,然后进行更改,然后将其更改为$ C:$ C 。 这样你就不必像从前那样完全重写所有的格式化规则,而只是把它们全部删除,诅咒,然后重新开始;

很明显,如果你打算在第1行或第2行的顶部插入行,这是行不通的,但你总是可以把它设置到其他行,你知道你不会改变。

我意识到插入行不会导致条件格式规则的拆分。 我也复制一行,并粘贴插入行正在做这个。 如果我select特殊的粘贴,只select公式,它的工作正常。

但是,我想知道是否有必要在“适用于”条件格式的“字段”中使用“间接”或“偏移”。 如果是这样,这将是一个问题。

我意识到这是一个旧的post,但我遇到了同样的问题,并从那时起就想出了如何不获得拆分条件格式规则。

在我的Excel 2010电子表格中,我将dateinput到列B中。有时候,我用胖手指date条目,这就是为什么我想有条件地格式化它们。 最初,我select了一个范围(B2:B1960),所以我的公式在条件格式规则中是“= B2:B1960> TODAY()”。

那么,这工作得很好,直到我去现有的行之间插入新的行。 规则将按照OP所述进行分割。 我偶然看到几个不同的网站,发现一个微软Office网站,指出我的答案。 它提到突出显示您想要格式化的范围,但将公式更改为“= B2> TODAY()”。

由于更改公式,我现在可以在现有行之间插入新行,而不像以前那样获取拆分规则。 这是到那个网页的链接。 http://office.microsoft.com/en-us/excel-help/use-a-formula-to-apply-conditional-formatting-HA102809768.aspx

什么对我来说是有效的,当你插入一行时,不要复制另一行的格式。 只有复制 – 特殊粘贴公式。 条件格式不会被分割。

我对这个确切的问题的解决scheme是从源副本清除格式。 脚步:

  1. 将源复制到剪贴板上
  2. 打开新的Excel文件
  3. select性粘贴,select公式(复制值和公式,省略格式)
  4. 复制到剪贴板
  5. 现在,您可以在使用它之前粘贴回源代码,或者使用条件格式将空白行插入到工作表中(注意,插入行不会更改条件格式设置规则的范围),并将剪贴板内容粘贴到新行中。

这对我使用MS Excel 2016

这里有一个类似的线索,可能会让你走上正轨:

如何使用Worksheet_Change事件的条件格式?

它概述了R1C1样式格式的解决方法,这可能不会受插入(未经testing)以及我在评论中提到的VBA方法的影响。

我发现了一个简单的过程,它似乎一致地用于插入新的行或列,并保留条件格式设置规则(至less在Office 2010中)的连续性,如下所示:

  1. 对包含要保留的条件格式的行或列的上方,下方或左侧或右侧执行所需数量的新行或列的简单“插入”。

注意a)您的条件格式将自动应用于插入的行或列,而无需进一步执行任何操作。 格式应该从相邻的行或列中inheritance。 b)任何边框格式也应该被复制到新插入的单元格中。

  1. select与新插入的相邻的行,列或范围(通过单击它),其中包含要复制的条件格式(以及公式和数据(如果适用))。

  2. 将鼠标hover在所选范围的左下angular或右下angular,直到您看到加号“+”出现(不要将其与行重新尺寸小工具混淆,因为它们看起来相似)。

  3. 左键单击并按住“+”,拖动所需的行,列或范围进行格式化,然后释放。

注意:我创build的条件格式规则仅引用一个单元格:例如)在标题为“格式值,这个公式为真:”,创build一个规则,如… = AND($ B8 =“”,$ C8 =“ “,$ D8 =”“,$ K8 <>”“),此规则适用于范围… = $ B $ 8:$ D $ 121,$ J $ 8:$ M $ 121。

你需要做的是1)插入一个新的行2)复制你想克隆的行3)粘贴特殊的“合并条件格式”

如果您希望其他人共享您创build的工作簿,那么不直观并且需要大量的用户培训

在2013年,一旦您发现您的格式化规则已被分割/复制,请为每种格式定义一个新的命名范围。 然后设置适用于= [命名范围]。 Excel将用实际范围replace命名的范围。 然后删除重复的格式。

通过以下步骤,我可以在Excel Mac 2011上运行它

  • 插入新行
  • 复制上面的一个(已经应用了条件格式)
  • 突出新排和粘贴特别 - >合并条件格式

CF规则保持不分割并更新以包括额外的行。