如何修改Excel表中这段VBA代码,使得其能将打开的xlsm格式文件保存为xls格式?

如图所示,原代码的作用是将文件夹内的的excel文档逐一打开,删除公式只保留数值后保存。
现在需要给他增加一个新的功能:如果打开的Excel是xlsm格式,将删除公式保留数值的文档保存为xls格式。请问该怎么修改代码呢?

插入三行代码,如下:
Next sht
if right(wb.name,4)="xlsm" then
wb.saveas ThisWorkbook.Path&"\"& replace(f,"xlsm","xls")
end if
wb.Close True追问

可以生成新Excel了,但是第一次打开新生成的Excel会弹出对话框“您尝试打开的文件的格式与文件拓展名指定的格式不一致。打开文件前请验证文件没有损坏且来源可信。是否立即打开该文件”,有办法消除这个提示吗?

追答

.saveas filename:=ThisWorkbook.Path&"\"& replace(f,"xlsm","xls"),FileFormat:=xlExcel8

追问

可以了,太感谢了

追答

呵呵

追问

又发现一个问题,当保存的xlsm文档里面有宏的时候,会弹出这个对话框,导致无法保存,请问有办法解决么?

可以了,解决了

追答

棒棒哒

温馨提示:答案为网友推荐,仅供参考