保留剪切粘贴的条件格式

保留剪切粘贴的条件格式

我有一些来自不同来源的数据,我想将它们排列起来,以便更好地了解它们有哪些共同的字段,哪些字段没有共同的字段。为了更容易看到行,我设置了一个条件格式规则,如下所示:

规则:

=MOD(ROW(),2)=0

适用于:

=$1:$1048576

行动:

Turn Green

效果很好……直到我剪切并粘贴一列或另一列中的单元格块。Excel 的“智能剪切和粘贴”破坏了一切,要么复制规则,要么从区域中删除部分,我不得不再次修复条件格式。我怎样才能在不更改条件格式规则的情况下移动数据?

答案1

我设法找到了一个解决方案,我记录了这个宏:

Sub FomattingRules()
'
' FomattingRules Macro
'
' Keyboard Shortcut: Ctrl+e
'
    Cells.Select
    Cells.FormatConditions.Delete

    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=MOD(ROW(),2)=0"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent3
        .TintAndShade = 0.599963377788629
    End With
    Selection.FormatConditions(1).StopIfTrue = False
End Sub

从技术上讲,这可行,但我更愿意找到一种不需要我时不时按 ctrl+e 的解决方案。但我想这比手动重置规则要好。

答案2

没有什么很好的办法可以解决这个问题。我建议复制粘贴值,然后删除原始单元格的内容。这将保持所有格式不变,但可以成功移动单元格内容。这有点麻烦,但你的另一个选择是每次剪切和粘贴时重新设置条件格式。你决定哪种方法更省事。

答案3

我不像你们中的一些人那样是个天才的程序员,我解决这个问题的方法很简单,只需两步。首先,我创建了一行额外的数据,与我正在为我的项目处理的数据字段分开。我确保此数据行具有我想要在整个数据字段中使用的正确条件格式。为了方便起见,我将此行命名为“标准”。

接下来,我只需选择“标准”行,突出显示所有包含我想要复制的公式的单元格即可。第三,我使用“格式刷”功能。我单击“格式刷”(剪切和复制下方屏幕左上角),然后突出显示我希望公式与“标准”行中保留的公式相匹配的单元格。

它不是自动的,但是一旦您创建了保留要使用的条件格式的“标准”行,只需两个步骤就可以很容易地应用于非常大的数据字段。

答案4

我认为,如果您按列进行条件格式设置(即 $G:$G)而不是提及行,则当您剪切和粘贴行时,它应该会保留条件格式。前提是您不剪切和粘贴列(即,如果您使用 $A:$D)。

相关内容