复制/粘贴格式以及条件规则

时间:2018-12-05 11:32:08

标签: excel vba excel-vba excel-2016

我在一张桌子上有一张桌子。

我清除了宏中表的所有内容。

但是我想在每列中使用一种特殊的格式:

A:居中,粗体,标准格式… B:左,数字格式...

问题是如何在不忘记条件规则的情况下如何使列适合所需的格式!

因为实际上我的代码是这样的:

Range("B2").Select
Selection.Copy
Range("B2").Select ''''' mise en forme Standar
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

效率不高...我将B2复制到B列的其余部分...

1 个答案:

答案 0 :(得分:0)

如果我已正确理解,您希望将第一行中的格式应用于该列中的其余单元格,而不会丢失这些目标单元格的条件格式。

您可以通过对现有代码进行一些修改来实现此目的,因此,代替:

Range("B2").Copy

做到这一点,以便一口气挑选出第一行中的所有格式:

Range("B2:G2").Copy

然后,您可以一步将格式应用于整个区域:

Selection.CurrentRegion.PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False

这会将顶部行的格式应用于下面的每一行,并保持每一列的格式,并且最重要的是保持条件格式。