100 精币
脚本内容就是excel转Pdf,如下:
Option Explicit
' 创建文件系统对象和Excel应用程序对象
Dim fso, excel, currentFolder, file, saveAsFile, ws
Set fso = CreateObject("Scripting.FileSystemObject")
Set excel = CreateObject("Excel.Application")
' 获取当前文件夹路径
currentFolder = fso.GetAbsolutePathName(".")
' 遍历当前文件夹中的所有文件
For Each file In fso.GetFolder(currentFolder).Files
' 检查文件是否为Excel文件
If fso.GetExtensionName(file.Name) = "xls" Or fso.GetExtensionName(file.Name) = "xlsx" Then
' 打开Excel文件
excel.Workbooks.Open file.Path
' 设置PDF文件名(与Excel文件同名,但扩展名为.pdf)
saveAsFile = fso.BuildPath(currentFolder, fso.GetBaseName(file.Name) & ".pdf")
' 遍历所有工作表
For Each ws In excel.ActiveWorkbook.Worksheets
ws.Activate
' 尝试将所有列调整到一页宽度
On Error Resume Next
ws.PageSetup.Zoom = False ' 禁用自动缩放
ws.PageSetup.FitToPagesWide = 1
ws.PageSetup.FitToPagesTall = False
' 设置打印区域为使用的范围
ws.PageSetup.PrintArea = ws.UsedRange.Address
Next
' 将Excel文件另存为PDF
excel.ActiveWorkbook.ExportAsFixedFormat 0, saveAsFile
' 关闭Excel文件
excel.ActiveWorkbook.Close False
WScript.Echo "已将 " & file.Name & " 转换为 PDF"
End If
Next
' 退出Excel应用程序
excel.Quit
' 释放对象
Set excel = Nothing
Set fso = Nothing
WScript.Echo "转换完成!"
我来回答