求EXCEL的复制与粘贴的批处理程序(BAT),具体要求如下:

原数据为的EXCEL文件“AX_01.XLS”文件,内“AX_01.XLS”有工作表‘SHEET1-某单位’。现想建立一个新的EXCEL文件“A001.XLS”,要求内工作表名称为A001(即与文件名相同),然后将‘SHEET1-某单位’中的内容整体复制粘贴到“A001.XLS”中。由于要处理的类似文件太多,手动改是不现实的,请高手编写一个批处理程序。(如能直接将工作表‘SHEET1-某单位’改名为“A001.XLS”名称也算成功,谢谢!只要BAT程序哟)
(如能直接将工作表‘SHEET1-某单位’改名为“A001.XLS”名称也算成功,谢谢!只要BAT程序哟)没讲清楚,改为:(如能直接将工作表‘SHEET1-某单位’改名为不带后缀的文件名(即”AX_01”),也算成功)

1,建立一个文件夹
2,打开一个空白的Excel,按Alt+F11,在左边列表双击Thisworkbook,在右边窗口粘贴以下内容:
Private Sub Workbook_Open()
Application.ScreenUpdating = 0
P = ThisWorkbook.Path & "\1\"
N = Dir(P & "*.XLS*")
Do
Set wb = Workbooks.Open(P & N)
Workbooks(N).Sheets(1).Name = N
wb.Save
wb.Close 0
N = Dir
If N = "" Then End
Loop
End Sub
3,关闭代码窗口,另存excel文件为1.xlsm到刚才建立的文件夹。
4,打开一个空白记事本,写入一句代码: 1.xlsm
5,另存记事本为1.bat到刚才建立的文件夹。
6,在文件夹中再建立一个子文件夹叫1
7,把需要处理的文件全部复制到文件夹1中
8,返回上层文件夹,双击1.bat
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-09-02
我的理解是要批量把某个文件夹中的所有工作簿的Sheet1-某单位的工作表名字改掉,改为序列形式的工作表名名。
其实用DOS批处理是不可能完成的,bat只能做一个外壳,实际使用的应该是VBS,也就是直接可以在操作系统下运行的VBScript。
需要楼主提供至少两个源工作簿用以查看实际的工作表名并测试。
腾讯号码谐音【一丝霸气三思柳闪闪舞】,可以详细讨论
第2个回答  2016-09-02
提问要有提问的样子。
起码把已知的说清楚。
相似回答