Excel 更改工作簿所有工作表中列的日期格式
我正在尝试将自定义日期格式更改为dd/mm/yyyy。 下面的代码适用于当前工作表,但不适用于所有工作表Excel 更改工作簿所有工作表中列的日期格式,excel,vba,Excel,Vba,我正在尝试将自定义日期格式更改为dd/mm/yyyy。 下面的代码适用于当前工作表,但不适用于所有工作表 Sub dateformat() Dim ws As Worksheet For Each ws In Worksheets Columns("E:E").Select Selection.NumberFormat = "dd/mm/yyyy;@" 'MsgBox ws.Name Next ws End Sub 很
Sub dateformat()
Dim ws As Worksheet
For Each ws In Worksheets
Columns("E:E").Select
Selection.NumberFormat = "dd/mm/yyyy;@"
'MsgBox ws.Name
Next ws
End Sub
很难手动运行每列的宏,因为工作簿有100多张工作表。
有什么想法可以让它工作吗?这对我来说很有用:
Sub dateformat()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Columns("E:E").NumberFormat = "dd/mm/yyyy;@"
Next ws
End Sub
避免选择,这是不可靠和不必要的。另外,“工作表”应该有一个工作簿。如果您使用
ws
进行迭代,您可能应该使用它(如ws.Columns
)。按照您的建议进行编辑,但我收到了一个“属性的无效使用”错误ws.Columns(“E:E”)。在这里选择就可以了。您从哪里得到“property error的无效使用?我得到一个“运行时错误'1004'”:range类的select方法失败”<代码>ws.Columns(“E:E”)。选择
谢谢!似乎select也会减慢代码的速度。根据你的建议,速度明显快得多