使用新文件名或格式保存指定Excel对象的活动工作簿
#Include <Excel.au3>
_ExcelBookSaveAs($oExcel, $sFilePath [, $sType = "xls" [, $fAlerts = 0 [, $fOverWrite = 0 [, $sPassword = "" [, $sWritePassword = "" [, $iAccessMode = 1 [, $iConflictResolution = 2]]]]]]])
$oExcel | 由预先调用_ExcelBookOpen()或_ExcelBookNew()打开的Excel对象 |
$sFilePath | 被读取的文件的文件名和路径 |
$sType | [可选参数] Excel可写文件类型字符串 = "xls|csv|txt|template|html", 默认"xls" |
$fAlerts | [可选参数] 禁用/启用Excel消息警告的标记(0=禁用(默认), 1=启用) |
$fOverWrite | [可选参数] 文件存在时是否覆盖的标记(0=否, 1=是) |
$sPassword | [可选参数] 用于保护工作表的密码字符串; 如果为空, 不使用密码(默认) |
$sWritePassword | [可选参数] 工作表写入保护使用的密码字符串; 如果为空, 不使用密码(默认) |
$iAccessMode | [可选参数] 分配给工作簿的文件共享模式: |
$xlNoChange | [可选参数] 保留共享模式(默认) (数字值 = 1) |
$xlExclusive | [可选参数] 禁止共享(数字值 = 3) |
$xlShared | [可选参数] 共享可用(数字值 = 2) |
$iConflictResolution | [可选参数] 对于共享文件, 如何解决共享冲突: |
$xlUserResolution | [可选参数] 弹出对话框询问用户如何解决(数字值 = 1) |
$xlLocalSessionChanges | [可选参数] 接受本地用户的修改(默认) (数字值 = 2) |
$xlOtherSessionChanges | [可选参数] 拒绝本地用户修改(数字值 = 3) |
成功: | 返回 1 |
失败: | 返回 0并设置@error |
@error: | 1 - 指定对象不存在 |
2 - 无效文件格式字符串 | |
3 - 文件已存在但未设置覆写标记 |
; ***************************************************************
; 示例 1 - 打开一个新的工作表并返回其对象标识符, 然后在没有任何提示的情况下保存该文件.
; *****************************************************************
#include <Excel.au3>
Local $sFilePath1 = @ScriptDir & "\Test.xls" ;这个文件应该已经存在
Local $oExcel = _ExcelBookOpen($sFilePath1)
If @error = 1 Then
MsgBox(4096, "错误!", "无法创建对象!")
Exit
ElseIf @error = 2 Then
MsgBox(4096, "错误!", "文件不存在!")
Exit
EndIf
_ExcelBookSaveAs($oExcel, @TempDir & "\SaveAsExample", "xls");没有任何提示的情况下保存
If Not @error Then MsgBox(4096, "成功!", "文件已保存!", 3)
_ExcelBookClose($oExcel, 1, 0) ;在没有任何提示的情况下保存该文件,然后关闭.
; ***************************************************************
; 示例 2 - 打开一个新的工作表并返回其对象标识符, 然后在没有任何提示的情况下保存该文件.
; 如果文件存在则覆盖它, 并使用密码选项保护文件. 然后打开这个工作表文件,并显示密码保护.
; *****************************************************************
#include <Excel.au3>
$sFilePath1 = @ScriptDir & "\Test.xls" ;这个文件应该已经存在
$oExcel = _ExcelBookOpen($sFilePath1)
;显示打开文件时可能发生的错误提示
If @error = 1 Then
MsgBox(4096, "错误!", "无法创建对象!")
Exit
ElseIf @error = 2 Then
MsgBox(4096, "错误!", "文件不存在!")
Exit
EndIf
_ExcelBookSaveAs($oExcel, @TempDir & "\SaveAsExample2", "xls", 0, 1, "ReadOnly") ;保存为"SaveAsExample2.xls"文件
If Not @error Then MsgBox(4096, "成功!", "File was Saved!", 3)
_ExcelBookClose($oExcel, 1, 0) ;在没有任何提示的情况下保存该文件,然后关闭.
$oExcel = _ExcelBookOpen(@TempDir & "\SaveAsExample2.xls", 1, False) ;打开这个工作表文件,并显示密码保护