2016-10-04 29 views
0

我在VBA中有一个函数根据指定值设置单元格内部颜色的格式 - 负数和正数以及零。VBA单元有条件手动格式化 - 最佳做法

PositiveFillColor,NeutralFillColor和NegativeFillColor是将颜色读入设置表单元格的全局长变量。

我主要关心的是宏的速度(对于中等数量的数据显然似乎非常好)和工作簿大小(3,5 MB对于这个数据量似乎太多了)。

也许这是一个更好的做法,使用Excel条件格式与VBA?

Public Function FillColorByValue(ByVal RefNumber As Double) As Long 

Dim FillColor As Long 

    If RefCellValue > 0 Then 
     FillColor = PositiveFillColor 
    ElseIf RefCellValue = 0 Then 
     FillColor = NeutralFillColor 
    ElseIf RefCellValue < 0 Then 
     FillColor = NegativeFillColor 
    End If 

FillColorByValue = FillColor 

End Function 

回答

0

有两种方式试试这个,看看哪一个更快

sub thetimingstuff() 

Dim StartTime As Double 
Dim SecondsElapsed As Double 

StartTime = Timer 

'your code goes here 

SecondsElapsed = Round(Timer - StartTime, 2) 
MsgBox "This code ran successfully in " & SecondsElapsed & " seconds", vbInformation 

end sub 
相关问题