MyXL.Save出现保存对话框,但MyXL.SaveAs "d:\test.xls"没有任何作用,d盘里也没有生成test.xls文件
难道金字塔里vba不能使用SaveAs吗?
加了,也不行
Sub CloseExcel()
On Error Resume Next
MyXL.DisplayAlerts = False
'MyXL.Save
'MyXL.SaveAs "d:\test.xls"
MyXL.Application.SaveAs "d:\test.xls"
'MyXL.ActiveBook.SaveAs "d:\test.xls"
MyXL.Quit
Set MyXL = Nothing '释放对该应用程序
End Sub
只有save可以
'打开某个excel文件
Sub GetExcelFile(sFileName)
'此过程暂停使用,替代过程为:GetExcel
Dim sWinName '窗口名
Dim iPos
'测试 Microsoft Excel 的副本是否在运行。
On Error Resume Next '延迟错误捕获。
'不带第一个参数调用 Getobject 函数将
'返回对该应用程序的实例的引用。
'如果该应用程序不在运行,则会产生错误。
Set MyXL = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Set MyXL = CreateObject("Excel.Application")
End if
'将对象变量设为对要看的文件的引用。
Set MyXL = GetObject(sFileName)
iPos = InStrRev(sFileName, "\", -1, vbTextCompare)
sWinName = Mid(sFileName, iPos + 1, Len(sFileName) - iPos - 4)
'设置其 Application 属性,显示 Microsoft Excel。
'然后使用 MyXL 对象引用的 Windows 集合
'显示包含该文件的实际窗口。
MyXL.Application.Visible = True
MyXL.Application.ScreenUpdating = True
MyXL.Parent.Windows(1).Activate
MyXl.Application.Sheets(1).Visible=true
End Sub
'关闭Excel
Sub CloseExcel()
On Error Resume Next
MyXL.Application.DisplayAlerts = False
'MyXL.Application.Save
MyXL.Application.Quit
' Set MyXL = Nothing '释放对该应用程序
End Sub
Sub SaveAs()
GetExcelFile "D:\test.xls"
'MyXL.Application.DisplayAlerts = False
MyXL.SaveAs "D:\Test1.xls"
'MyXL.Application.Quit
' Set MyXL = Nothing '释放对该应用程序
End Sub
Sub APPLICATION_VBAStart()
SaveAs
End Sub
我把你的程序原封不动拷贝过来,编译出错
编译器错误‘438’
对象不支持此属性或方法‘MyXL.SaveAs ’
请问新建的excel文件用saveas保存怎么写呢?
Set MyXL = CreateObject("Excel.Application")
MyXL.Visible = True
MyXL.Workbooks.Add
Set MyXL = CreateObject("Excel.Application")
MyXL.Visible = True
MyXL.Workbooks.Add
MyXL.ActiveWorkbook.SaveAs "D:\Test2.xls"