通过使用End(xlUp)格式化最低行

我使用了一个macros作为参考,并创build了这个代码来select和格式化最后一行文本。 我但是得到一个语法错误。 任何有关如何解决这个问题的见解将不胜感激。

Dim Title As String Title = "C. TEST PROCEDURE" Sheets("Sheet1").Range("B56").End(xlUp).Offset(1, -1) = Title Sheets("Sheet1").Range("A56").End(xlUp).Offset(0, 0).Select Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.Bold = True 

使用Selection要求您保持工作表例如Sheet1活动。 如果您激活了另一个工作表并运行代码,您将会遇到错误。 在VBA中Selection是糟糕的select。

尝试这个

 With Sheets("Sheet1").Range("A56").End(xlUp).Offset(0, 0) .Font.Underline = xlUnderlineStyleSingle .Font.Bold = True End With 

你用适当的数据编码。

从…开始:

在这里输入图像说明

你的代码产生:

在这里输入图像说明

代码运行没有任何语法错误,但如果你想格式化最后一行,以下为我工作

 Dim Title As String, ws As Worksheet Set ws = ActiveSheet Title = "C. TEST PROCEDURE" ws.Cells(ws.Rows.count, "B").End(xlUp).Offset(1, -1) = Title ws.Cells(ws.Rows.count, "A").End(xlUp).Offset(0, 0).Select Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.Bold = True 

我不确定第56行是否有任何重要的内容,但会得到列中最后一行。