如何批量修改N个相同模板EXCEL文件的某个单元格的内容,谢谢

你们好,我是搞报价分析的,有时候只需要修改某个单元格的一个数据,但是我每次都要重复打开好几百个文件,重复修改,希望大神能够编织一个宏设置,帮我实现批量修改EXCEL的某个表格的内容,谢谢

Sub test()
Application.ScreenUpdating = False
p = "d:\1\" ' 指定你所要批量更新的文档的文件夹路径
f = Dir(p & "*.xls")
m = ThisWorkbook.Name
Do While f <> ""
If f <> m Then
Set w = Workbooks.Open(p & f)
w.Sheets(1).Range("17:30") = Now ' '改成你所想要变更的单元格及内容
w.Close True
End If
f = Dir
Loop
Application.ScreenUpdating = True
End Sub追问

你好,我的EXCEL文件有多个工作表,请问我如何指定某个工作表呢

追答

每张表(sheet)都要改吗?
如果想指定某张表的话:
w.Sheets("你想要的那张表名").Range("17:30") = Now ' '改成你所想要变更的单元格及内容

追问

谢谢,我只需要修改制定的某张表,我刚刚测试了,比如w.Sheets(门窗单价分析).Range("E30") = 19 '无法运行,现在我出去下,待会回来,谢谢你

追答

'

w.Sheets("门窗单价分析").Range("E30") = 19 ' 门窗单价分析要加引号

以下方法也可以
Sub test()
On Error Resume Next
Application.ScreenUpdating = False
P = ThisWorkbook.Path 将此文档与你要更改的文档放在一起
f = Dir(P & "\*XLS")
m = ThisWorkbook.Name
Do While f ""
If f m Then
Set w = Workbooks.Open(P & "\" & f)
w.Sheets("门窗单价分析").Range("E30") = 19
w.Close True
End If
f = Dir
Loop
Application.ScreenUpdating = True

End Sub

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-06
去看看网上关于VBA的文章吧。能帮到你。追问

Sub test()
Application.ScreenUpdating = False
p = "d:\1\" '
f = Dir(p & "*.xls")
m = ThisWorkbook.Name
Do While f ""
If f m Then
Set w = Workbooks.Open(p & f)
w.Sheets(1).Range("17:30") = Now '
w.Close True
End If
f = Dir
Loop
Application.ScreenUpdating = True
End Sub

不懂用