Vba 如何将Excel列从特定行向下格式化
从B5、C5、D5开始。。。。我有一个excel文件,如下所示: 请注意,我在前3行上有一些标题和标题文本,因此我需要使用宏根据行标题(标题仅用于提及所需类型)从第5行到结尾设置每列的类型。请告诉我如何在Excel VBA中执行此操作Vba 如何将Excel列从特定行向下格式化,vba,excel,excel-2007,Vba,Excel,Excel 2007,从B5、C5、D5开始。。。。我有一个excel文件,如下所示: 请注意,我在前3行上有一些标题和标题文本,因此我需要使用宏根据行标题(标题仅用于提及所需类型)从第5行到结尾设置每列的类型。请告诉我如何在Excel VBA中执行此操作 谢谢这就是你要尝试的吗?我展示了列B的一个示例。剩下的就做吧 逻辑: 查找列中的最后一行。看 构建你的范围 根据需要设置范围的格式 代码: Private Sub Sample() Dim ws As Worksheet Dim LastRow
谢谢这就是你要尝试的吗?我展示了
列B
的一个示例。剩下的就做吧
逻辑:
Private Sub Sample()
Dim ws As Worksheet
Dim LastRow As Long, Header As Long
Header = 5 '<~~ Start row for formatting
Set ws = ThisWorkbook.Sheets("Sheet1")
With ws
LastRow = .Range("B" & .Rows.Count).End(xlUp).Row
With .Range("B" & Header & ":B" & LastRow)
'
'~~> Change format here
'
'~~> Number with 5 decimal places.
.NumberFormat = "0.00000"
End With
End With
End Sub
Private子示例()
将ws设置为工作表
变暗最后一行长度,标题长度
页眉=5'在此处更改格式
'
“~~>小数点后5位的数字。
.NumberFormat=“0.00000”
以
以
端接头
评论的后续行动
谢谢,但这只是格式化B5单元格,您能告诉我如何处理从5行到1000行的其余部分吗?Behseini 11秒前 哦,如果在第5行之后没有值,并且您想要硬编码最后一行,那么使用此代码
Private Sub Sample()
Dim ws As Worksheet
Dim LastRow As Long, Header As Long
Header = 5 '<~~ Start row for formatting
LastRow = 1000 '<~~ Last Row
Set ws = ThisWorkbook.Sheets("Sheet1")
With ws
With .Range("B" & Header & ":B" & LastRow)
'
'~~> Change format here
'
'~~> Number with 5 decimal places.
.NumberFormat = "0.00000"
End With
End With
End Sub
Private子示例()
将ws设置为工作表
变暗最后一行长度,标题长度
Header=5'我们怎么知道Header有哪一行?嗨,Siddharth,对不起,我没有理解你的意思?它总是5行吗?我的意思是从哪里开始格式化?检查下面的代码。谢谢Siddharth,但是如何更改格式?我的意思是,我怎样才能将列指定为小数点后5位的数字?@Behseini:我已经更新了代码。刷新页面以查看更新的回复。谢谢,但这只是格式化B5单元格,请告诉我如何处理从5行到1000行的其余部分。非常感谢!