如何仅使用VBA中With语句之后编写的代码

时间:2014-09-16 20:50:51

标签: excel-vba vba excel

我正在使用With/End With,并且只想调用With之后编写的代码,但我无法弄清楚如何执行此操作。例如:

With Activecell.End(xlToRight).End(xlToRight)
    Range(., .End(xlDown)).NumberFormat = "###0"
End With

我希望在这种情况下单.代表Activecell.End(xlToRight).End(xlToRight),但它不起作用。有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

假设Active的目的是ActiveCell,那么With ... End With将处理单个单元格。至少,您需要告诉Range您要处理由.Cells语句指定的With ... End With(在本例中为单个单元格)。

With ActiveCell.End(xlToRight).End(xlToRight)
    Range(.Cells, .Cells.End(xlDown)).NumberFormat = "###0"
End With

如果这是指一系列多个单元格,则应使用.Cells(1, 1),但由于定义为单个单元格,因此无需指定位置。