首页 > 解决方案 > 行 Target.row 的问题

问题描述

我有一个运行良好的宏。此宏更改字符的大小和选定单元格的颜色,当取消选择单元格以选择新单元格时,它会返回未选定单元格的默认参数并更改字符的大小和颜色选定的单元格...现在我想将此宏扩展到新的选定单元格,而且扩展到与选定单元格相关的整行。

在我的 VBA 代码中,我尝试通过在以下行中添加“.Row”来修改代码:With target 所以通过这个修改,我的新行是:With Target.Row 不幸的是,在我的工作表中选择一个新单元格时,我得到了以下错误消息:编译错误:With Object 必须是用户定义的类型、Object 或 Variant

请在下面找到我的宏的代码。在此先感谢您的帮助。

Const FontSize As Integer = 12
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
LargeSize = FontSize * 1.2
 With Cells
 .Font.Size = FontSize
.Interior.Color = xlNone      
End With



 With Target.Row
.Font.Size = LargeSize
.Interior.Color = 49407    
End With

End Sub

标签: excelvbaeventstarget

解决方案


a的Row-propertyRange返回行号。
您需要的是一个包含一行所有单元格的 Range。您可以Range.EntireRow为此使用:

 With Target.EntireRow
    .Font.Size = LargeSize
    .Interior.Color = 49407
End With

推荐阅读