引用范围从 Excel 调用到更改格式



我正在尝试从电子表格创建一个将更改为单元格格式的调用。当我显式枚举范围(即"C7"(时,我的代码可以工作。当我在 excel 函数调用中隐式使用它时,它不会:

如果我在单元格中输入 =call_color,"C7"会变成绿色。如果我把=Color_Green(C7(放在同一个单元格中,它不起作用。

Sub call_color()
Dim TestVal As Range
Set TestVal = Range("C7")
Call Color_Green(TestVal)
End Sub
Sub Color_Green(ByRef MyRng As Range)
' Color Green Macro
MyRng.Select
With Selection.Interior
.Color = RGB(0, 250, 0)
End With
End Sub

我希望能够在 vb 中进行一些计算,并根据这些计算格式化单元格。如何传递允许 .interior 函数工作的范围?

不要使用选择或选择,并提供父工作表引用。

Sub call_color()
Dim TestVal As Range
Set TestVal = worksheets("sheet1").Range("C7")
Color_Green TestVal
End Sub
Sub Color_Green(ByRef MyRng As Range)
' Color Green Macro
MyRng.Interior.Color = RGB(0, 250, 0)
End Sub

最新更新