批处理(Batch)把Excel文件xls格式和xlsx格式进行互换

批处理(Batch)把Excel文件xls格式改成xlsx格式以及xlsx格式改为xls格式。

Case1:xls转xlsx - 单个文件.bat

powershell 复制代码
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
$Workbook = $Excel.Workbooks.Open("C:\Test\Excel\1.xls")
$Workbook.CheckCompatibility = $false
$Workbook.SaveAs("C:\Test\Excel\1.xlsx", 51)
$Workbook.Close()
$Excel.Quit()

Case2:xls转xlsx - 多个文件.bat

powershell 复制代码
$OldFolder = "C:\Test\From"
$NewFolder = "C:\Test\To"
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
Get-ChildItem -Path $OldFolder\*.xls -File | ForEach-Object {
    $NewName = $NewFolder + "\" + $_.BaseName + ".xlsx"
    "[From] " + $_.FullName
    "[To] " + $NewName
    $Workbook = $Excel.Workbooks.Open($_.FullName)
    $Workbook.CheckCompatibility = $false
    $Workbook.SaveAs($NewName, 51)
    $Workbook.Close()
}
$Excel.Quit()

Case3:xlsx转xls - 单个文件.bat

powershell 复制代码
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
$Workbook = $Excel.Workbooks.Open("C:\Test\Excel\1.xlsx")
$Workbook.CheckCompatibility = $false
$Workbook.SaveAs("C:\Test\Excel\2.xls", 56)
$Workbook.Close()
$Excel.Quit()

Case4:xlsx转xls - 多个文件.bat

powershell 复制代码
$OldFolder = "C:\Test\From"
$NewFolder = "C:\Test\To"
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
Get-ChildItem -Path $OldFolder "*.xlsx" | ForEach-Object {
    $NewName = $NewFolder + "\" + $_.BaseName + ".xls"
    "[From] " + $_.FullName
    "[To] " + $NewName
    $Workbook = $Excel.Workbooks.Open($_.FullName)
    $Workbook.CheckCompatibility = $false
    $Workbook.SaveAs("$NewName", 56)
    $Workbook.Close()
}
$Excel.Quit()

以上仅供参考学习。

http://www.bathome.net/thread-53806-1-6.html

相关推荐
方璧3 小时前
限流的算法
java·开发语言
Hi_kenyon4 小时前
VUE3套用组件库快速开发(以Element Plus为例)二
开发语言·前端·javascript·vue.js
曲莫终4 小时前
Java VarHandle全面详解:从入门到精通
java·开发语言
ghie90904 小时前
基于MATLAB GUI的伏安法测电阻实现方案
开发语言·matlab·电阻
Gao_xu_sheng4 小时前
Inno Setup(专业安装/更新 EXE)
开发语言
吴声子夜歌5 小时前
Java数据结构与算法——基本数学问题
java·开发语言·windows
wanglei2007086 小时前
生产者消费者
开发语言·python
leo__5206 小时前
基于菲涅耳衍射积分的空心高斯光束传输数值模拟(MATLAB实现)
开发语言·matlab
昵称已被吞噬~‘(*@﹏@*)’~6 小时前
【RL+空战】学习记录03:基于JSBSim构造简易空空导弹模型,并结合python接口调用测试
开发语言·人工智能·python·学习·深度强化学习·jsbsim·空战