作者:乔山办公网日期:
返回目录:excel表格制作
本例copy假设文件另存百为:C:\aaa.xls,你可以度自行修改
请在ThisWorkBook对象中输问入如下代码答:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs Filename:="C:\aaa.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
给你举个例子:
Sub test11()
Open ThisWorkbook.Path & "\output.txt" For Output As #1 '在#1打开当前文件夹中的output.txt文件
str1 = "123"
str2 = "你好吗"
str3 = "hello"
Print #1, str1, str2, str3, Date '写入内容
Write #1, str1, str2, str3, Date '写入内容
Close #1 '关闭zhidao#1这个文件
End Sub
程序会在output.txt文件内生成两列内容如下:
123 你好吗 hello 2013-11-22
"123","你好吗","hello",#2013-11-22#
说明:ThisWorkbook.Path表示版相对路径,是权指当前vba对应宏文件所在的文件夹,当前的output.txt与vba对应的宏文件是同文件夹。
您可以参考下面的代码,看看能否帮到e79fa5e98193e4b893e5b19e339你
Sub closeObject()
Dim xlExcel As Object, wb1 As Workbook, wb2 As Workbook, wb3 As Workbook, wb4 As Workbook, wb5 As Workbook
Set xlExcel = CreateObject("excel.application")
Set wb1 = xlExcel.workboos("1#站每日库存表.xlsm")
Set wb2 = xlExcel.workboos("4#站每日库存表.xlsm")
Set wb3 = xlExcel.workboos("16#站每日库存表.xlsm")
Set wb4 = xlExcel.workboos("27#站每日库存表.xlsm")
Set wb5 = xlExcel.workboos("76#站每日库存表.xlsm")
If wb1 Is Nothing Then
MsgBox "1#站每日库存表 不存在", vbOKOnly, "===> Warning"
Else
wb1.Close False
End If
If wb2 Is Nothing Then
MsgBox "4#站每日库存表.x不存在", vbOKOnly, "===> Warning"
Else
wb2.Close False
End If
If wb3 Is Nothing Then
MsgBox "16#站每日库存表 不存在", vbOKOnly, "===> Warning"
Else
wb3.Close False
End If
If wb4 Is Nothing Then
MsgBox "27#站每日库存表 不存在", vbOKOnly, "===> Warning"
Else
wb4.Close False
End If
If wb5 Is Nothing Then
MsgBox "76#站每日库存表 不存在", vbOKOnly, "===> Warning"
Else
wb5.Close False
End If
End Sub
如果a是b通过vba调用百excel application打开的, 那代码关闭它度很容易
如果不是, 那需问要调用windows API遍历目前所有进答程, 然后回判断哪个excel进程是需要关闭答的, 关闭即可