注册 登录
编程论坛 VB6论坛

代码运行有问题,无法保存,求指教!

七彩爆炸鸡 发布于 2022-12-14 09:19, 1355 次点击
代码1:先运行这段代码将文件保存到指定文件夹内

Private Sub CommandButton21_Click()
Dim AA, BB
Application.DisplayAlerts = False
AA = "C:\Users\Administrator\Desktop\XXX\" & Format(Date, "YYYY-MM-DD") & "\YYY\"
BB = [K3]
ThisWorkbook.SaveAs AA & BB & ".xlsm"
Application.DisplayAlerts = True
End Sub

代码2:再运行下面的代码,将其他表格移动到正在工作的excel上:

Workbooks.Open Filename:="C:\Users\Administrator\Desktop\ZZZ.xlsm" '打开表格代码
Windows("ZZZ.xlsm").Activate '转移工作簿代码
Sheets("Sheet1").Select
Sheets("Sheet1").Move Before:=Workbooks(ThisWorkbook.Name).Sheets(1)
'Windows("ZZZ.xlsm").Activate '表格关闭不保存
'ActiveWindow.Close SaveChanges:=False
End Sub

但是再点击命名 按钮21 运行 代码1 时,出现下面的问题导致无法保存,求指教!
只有本站会员才能查看附件,请 登录
4 回复
#2
yuma2022-12-14 10:21
你操作完没有关闭文件,当然保存不成功。
#3
七彩爆炸鸡2022-12-14 10:45
回复 2楼 yuma
对不起大佬,我的描述有点问题...

代码1:先运行这段代码将文件保存到指定文件夹内

Private Sub CommandButton21_Click()
Dim AA, BB
Application.DisplayAlerts = False
AA = "C:\Users\Administrator\Desktop\XXX\" & Format(Date, "YYYY-MM-DD") & "\YYY\"
BB = [K3]
ThisWorkbook.SaveAs AA & BB & ".xlsm"
Application.DisplayAlerts = True
End Sub

代码2:再运行下面的代码,将其他表格移动到正在工作的excel上:

Workbooks.Open Filename:="C:\Users\Administrator\Desktop\ZZZ.xlsm" '打开表格代码
Windows("ZZZ.xlsm").Activate '转移工作簿代码
Sheets("Sheet1").Select
Sheets("Sheet1").Move Before:=Workbooks(ThisWorkbook.Name).Sheets(1)
'Windows("ZZZ.xlsm").Activate '表格关闭不保存
'ActiveWindow.Close SaveChanges:=False
End Sub

再运行代码1是可以正常保存的。

问题:
但是第二个表格内的Sheet1被移动了,剩下Sheet2,这个时候的要手动关闭再点击不保存(因为不能改动这个文件)
如果我添加下面的代码(原来代码2里面的,有两段是用 ' 隔开不启用的代码)
Windows("ZZZ.xlsm").Activate '表格关闭不保存
ActiveWindow.Close SaveChanges:=False

代码1:先运行这段代码将文件保存到指定文件夹内

Private Sub CommandButton21_Click()
Dim AA, BB
Application.DisplayAlerts = False
AA = "C:\Users\Administrator\Desktop\XXX\" & Format(Date, "YYYY-MM-DD") & "\YYY\"
BB = [K3]
ThisWorkbook.SaveAs AA & BB & ".xlsm"
Application.DisplayAlerts = True
End Sub

代码2:再运行下面的代码,将其他表格移动到正在工作的excel上:

Workbooks.Open Filename:="C:\Users\Administrator\Desktop\ZZZ.xlsm" '打开表格代码
Windows("ZZZ.xlsm").Activate '转移工作簿代码
Sheets("Sheet1").Select
Sheets("Sheet1").Move Before:=Workbooks(ThisWorkbook.Name).Sheets(1)
Windows("ZZZ.xlsm").Activate '表格关闭不保存
ActiveWindow.Close SaveChanges:=False
End Sub

再运行代码1就保存有问题了
#4
yuma2022-12-14 12:38
看事件、属性写法,你这个是代码吧。这里是VB6论坛。

代码和VB6代码区别较大。
#5
cwa99582022-12-15 12:51
回复 4楼 yuma
他这个是Excel的vba
1