【问题标题】:Format the rows and columns of a range based on variable根据变量格式化范围的行和列
【发布时间】:2015-10-15 17:25:32
【问题描述】:

我尝试了不同的解决方案并成功编译,但在电子表格上没有看到我的问题的结果。

我想根据不同工作表的两个单元格中的值来格式化一张工作表上的表格颜色。

一个值是长度(行号),一个是宽度(列号),每次更改单元格的值时都应该更新它。这是我没有显示任何结果的内容:

Sub Worksheet_Formatting(ByVal Target As Range)

Dim NearWidth As Integer
Dim NearLength As Integer
Dim R As Range

NearWidth = Worksheets("Information").Cells(2, 2).Value
NearLength = Worksheets("Information").Cells(3, 2).Value
R = Range(Worksheets("Antenna Placement").Cells(2, 2).Value, Worksheets("Antenna Placement").Cells(NearLength, NearWidth)) = RGB(0, 255, 0)


End Sub

关于为什么编译但结果没有显示的任何解释?

【问题讨论】:

    标签: excel vba formatting range conditional-formatting


    【解决方案1】:

    您正在混合设置范围和设置背景颜色。将您的 R = ... 替换为

    Set R = Range(Worksheets("Antenna Placement").Cells(2, 2).Value, Worksheets("Antenna Placement").Cells(NearLength, NearWidth))    
    R.Interior.Color = RGB(0,255,0)
    

    【讨论】:

    • 感谢您的回复。我进行了更改,这就是我现在所拥有的:NearWidth = Worksheets("Information").Cells(2, 2).Value NearLength = Worksheets("Information").Cells(3, 2).Value Set R = Range(Worksheets("Antenna Placement").Cells(1, 1).Value, Worksheets("Antenna Placement").Cells(NearLength, NearWidth)) R.Interior.Color = RGB(0, 255, 0) End Sub 我在天线放置窗口中有代码。有错吗?
    • 你在“看”哪些单元格?换句话说,您说您希望在更改单元格时运行它 - 什么单元格?信息工作表中的单元格 B2 和 B3?这个宏应该放在一个工作表模块中(在 VB 窗口中右键单击项目,然后添加模块)。
    • 是的。这些单元格定义了应该在天线放置表上显示的区域
    猜你喜欢
    • 2018-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多