Excel 跨工作簿的条件格式问题
我有一个非常简单的表,我对它应用了条件格式规则。该规则规定,对于特定颜色,高亮显示小于一定数量的值。但是,我发现当我将工作表复制到另一个工作簿时,突出显示的单元格的颜色会发生显著变化。在这个例子中,它从绿色变为橙色。这是一个普遍的问题吗?是否有人知道如何解决此问题?我无法复制此问题 请将下面的代码添加到问题工作簿中 将光标放在源工作簿中显示为绿色的单元格上,然后运行宏TestCF()。然后将光标放在目标工作簿中的同一单元格上,然后再次运行宏TestCF() 宏显示条件格式设置的字体颜色。两个工作簿的输出相同。也许你会得到不同的输出Excel 跨工作簿的条件格式问题,excel,Excel,我有一个非常简单的表,我对它应用了条件格式规则。该规则规定,对于特定颜色,高亮显示小于一定数量的值。但是,我发现当我将工作表复制到另一个工作簿时,突出显示的单元格的颜色会发生显著变化。在这个例子中,它从绿色变为橙色。这是一个普遍的问题吗?是否有人知道如何解决此问题?我无法复制此问题 请将下面的代码添加到问题工作簿中 将光标放在源工作簿中显示为绿色的单元格上,然后运行宏TestCF()。然后将光标放在目标工作簿中的同一单元格上,然后再次运行宏TestCF() 宏显示条件格式设置的字体颜色。两个工作
Option Explicit
Sub TestCF()
Dim InxCF As Long
With ActiveCell
Debug.Print "Workbook " & ActiveWorkbook.Name & " Worksheet " & _
ActiveSheet.Name & " Cell " & ColNumToCode(ActiveCell.Column) & ActiveCell.Row
For InxCF = 1 To .FormatConditions.Count
Debug.Print " Format " & InxCF
With .FormatConditions(InxCF)
Debug.Print " Font colour: " & ColourToRGB(.Font.Color)
End With
Next
End With
End Sub
Function ColourToRGB(ByVal Colour As Long) As String
Dim Red As Long
Dim Blue As Long
Dim Green As Long
Dim BlueGreen As Long
Red = Colour Mod 256
BlueGreen = Colour \ 256
Green = BlueGreen Mod 256
Blue = BlueGreen \ 256
ColourToRGB = "RGB(" & Red & ", " & Green & ", " & Blue & ")"
End Function
Function ColNumToCode(ByVal ColNum As Long) As String
Dim Code As String
Dim PartNum As Long
' Last updated 3 Feb 12. Adapted to handle three character codes.
If ColNum = 0 Then
ColNumToCode = "0"
Else
Code = ""
Do While ColNum > 0
PartNum = (ColNum - 1) Mod 26
Code = Chr(65 + PartNum) & Code
ColNum = (ColNum - PartNum - 1) \ 26
Loop
End If
ColNumToCode = Code
End Function
谢谢,我很快会花一些时间来测试。