修改指定工作表Sheet2中G3:G区域日期格式的VBA代码问题求助
代码错误修正说明
- 区域引用语法错误:原代码里的
Range("G3, G")写法不符合VBA的区域引用规则,要表示G3到G列最后一行的有效数据区域,需结合End(xlUp)定位G列最后有数据的行,正确写法示例为.Range("G3:G" & .Cells(.Rows.Count, "G").End(xlUp).Row)。 - 未绑定With块作用域:在
With Worksheets("Sheet2")代码块内,引用Range对象时必须添加前缀.,否则会默认引用当前活动工作表,而非指定的Sheet2,所以要写成.Range(...)而非Range(...)。
修正后的完整代码(针对G3到G列有数据的区域):
With Worksheets("Sheet2") .Range("G3:G" & .Cells(.Rows.Count, "G").End(xlUp).Row).NumberFormat = "dd.mm.yyyy" End With
如果要直接设置G3到G列所有行(包含空白行),可简化为:
With Worksheets("Sheet2") .Range("G3:G" & .Rows.Count).NumberFormat = "dd.mm.yyyy" End With
内容的提问来源于stack exchange,提问作者David Vlnatý
相关产品推荐
相关产品推荐

