在 Excel 中为 Mac 合并条件格式时的特殊问题

Paste Special issue when merging conditional formats in Excel for Mac

我有一个简单的宏,可以将一个单元格复制到另一个单元格,合并条件格式:

Sub test()

   Range("A2").Copy

   Range("A3").PasteSpecial Paste:=xlPasteAllMergingConditionalFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

End Sub

A2的内容是1,条件规则就是=ISODD($A2)。 当我在 Excel 2016 Mac 中执行宏时,出现此错误:

Run-time error '1004':
Method 'PasteSpecial' of object 'Range' failed

相同的宏在 Excel 中完美地适用于 Windows。

如果我将 XlPasteType 选项更改为 xlPasteAll 而不是 xlPasteAllMergingConditionalFormats,宏将无误地执行。

对于Mac,您可能没有VBA中的所有枚举和属性,因此您可以直接将其替换为它的值。

此处将xlPasteAllMergingConditionalFormats替换为14.

因为对象浏览器(VBE 中的 F2)说:

Const xlPasteAllMergingConditionalFormats = 14