我想要对一列进行格式化,但要排除第一行,因为这是标题:
我的当前代码如下:
Sheets("Sheet1").Columns(3).NumberFormat = "#,##0"
谢谢。
我想要对一列进行格式化,但要排除第一行,因为这是标题:
我的当前代码如下:
Sheets("Sheet1").Columns(3).NumberFormat = "#,##0"
除非头部是数字,否则我认为您不需要这样做。 数字格式不会影响文本(至少不太明显)。 但是,这里有一种方法:
With ThisWorkbook.Sheets("Sheet1")
.Columns(3).Resize(.Rows.Count - 1, 1).Offset(1, 0).NumberFormat = "#,##0"
End With
或者
Sheets("Sheet1").Range(cells(2,3), cells(2,3).end(xldown)).NumberFormat = "#,##0"
这将选择的不是整个列,而是从您的第一个到最后一个非空行的范围。但是,如果您在第一行和最后一行之间有空单元格,则这不是适当的解决方案。
尝试使用这段代码
Sheets("Sheet1").Range("Starting cell").Entirecolumn.NumberFormat = "#,##0"
或者在格式化列之后返回并重新格式化第一个单元格。这将避免空单元格的问题。
Dim dTab As Worksheet
Set dTab = ThisWorkbook.Sheets("Sheet1")
dTab.Columns(3).NumberFormat = "#,##0"
dTab.Range("C1").NumberFormat = "m/dd/yy" 'or whatever