[摘要] WPS有一个比较有意思的功能叫十字光标,就是可以亮显选择单元格的行列,数据量比较多的时候可以方便查看数据,可惜Excel原生并没有类似的
WPS有一个比较有意思的功能叫十字光标,就是可以亮显选择单元格的行列,数据量比较多的时候可以方便查看数据,可惜Excel原生并没有类似的功能,网上搜索了一下,发现可以通过VBA完成类似的功能,便尝试了一下。
思路是通过VBA获得选择区域的行与列,在行列中添加条件格式,通过条件格式改变行与列单元格的填充。当选择区域发生更改的时候,清除掉单元格的条件格式,重复取得行列,添加条件格式的步骤。
美中不足的是因为是使用条件格式来进行高亮的,启用时表格就不能使用条件格式功能了,因为每次更改选区时都会触发清除条件格式的命令。
VBA代码:
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Cells.FormatConditions.Delete '清除条件格式 For Each Row In Target.Rows '遍历选择的行 With Row.EntireRow.FormatConditions '行通过条件格式改变填充 .Add xlExpression, ,"TRUE".Item(1).Interior.Color = RGB(217, 217, 217) End With Next For Each Col In Target.Columns '遍历选择的列 With Col.EntireColumn.FormatConditions '列通过条件格式改变填充 .Delete .Add xlExpression, ,"TRUE".Item(1).Interior.Color = RGB(217, 217, 217) End With NextEnd Sub