我有一张电子表格,其中每一行都包含有关群组成员的信息。列的每个单元格中B
都有一个整数代表每个人(即成员 ID)。所有成员都有一个唯一的 ID。
我想使用条件格式以红色突出显示重复项。
问题在于,由于复制粘贴到电子表格而不是键入,受影响单元格中的条件格式将被删除。这意味着重复检测已消失。此外,长整数变成了科学计数法,这很不方便。
我尝试使用 VBA 程序来修复此问题。我定义了函数EnforceFormat
,B1
每次对电子表格进行更改时,该函数都会强制格式化 B 列的所有单元格(除 外)。编辑器没有返回任何错误,所以我认为没问题。但是当我回到电子表格时,我注意到宏没有做任何事情。
我的代码有什么问题?另外,我应该添加哪些属性来禁用科学计数法并指定精确的字体?
Sub EnforceFormat()
'Define Range for Conditional Formatting
Dim EnforcedRange As Range
'Set Range for Conditional Formatting
Set EnforcedRange = Range("B2:B1048576")
'Define Rule for Duplicates
Dim Uniques1 As UniqueValues
'Set Rule and Style for Duplicates
Set Uniques1 = EnforcedRange.FormatConditions.AddUniqueValues
Uniques1.DupeUnique = xlDuplicate
Uniques1.Font.Color = RGB(255, 0, 0)
Uniques1.Font.Bold = True
Uniques1.Font.Size = 17
'Define Rule for Uniques
Dim Uniques2 As UniqueValues
'Set Rule and Style for Uniques
Set Uniques2 = EnforcedRange.FormatConditions.AddUniqueValues
Uniques2.DupeUnique = xlUnique
Uniques2.Font.Color = RGB(0, 0, 0)
Uniques2.Font.Bold = False
Uniques2.Font.Size = 15
End Sub