彰化一整天的論壇

 找回密碼
 立即註冊
搜索
查看: 87|回復: 3

(已解決) vba另存新檔,為何按取消後仍會存檔

[複製鏈接]
發表於 2017-10-17 11:45:54 | 顯示全部樓層 |閱讀模式
本帖最後由 jenny830602 於 2017-10-17 12:36 編輯

不好意思,又來打擾了。如題,我寫了以下vba程式碼,希望能將檔案另存新檔為xlsx,
但為何按取消後仍會自動儲存?且檔名會被強制變成 false 呢?

希望如果按取消,程式就不作存檔的動作~請問應該如何修改?謝謝!

活頁簿1.xlsm (17.52 KB, 下載次數: 4)
1516351.PNG
132456.PNG
回復

使用道具 舉報

 樓主| 發表於 2017-10-17 12:36:58 | 顯示全部樓層
不好意思,已經自行解決了~再麻煩大大幫我移除本篇文章
回復 支持 反對

使用道具 舉報

發表於 2017-10-17 14:58:23 | 顯示全部樓層
jenny830602 發表於 2017-10-17 12:36
不好意思,已經自行解決了~再麻煩大大幫我移除本篇文章

您好,
     不用刪除,可以給其他網友參考,我的解答如下.
  1. Private Sub CommandButton1_Click()


  2.     Application.DisplayAlerts = False
  3.    
  4.    
  5.     savename = Application.GetSaveAsFilename(fileFilter:="Exel Files (*.xlsx), *.xlsx")
  6.    
  7.     If savename <> False Then
  8.         ActiveSheet.Shapes.Range(Array("CommandButton1")).Select
  9.         Selection.Delete
  10.         ActiveWorkbook.SaveAs Filename:=savename, FileFormat:=xlNormal
  11.     End If
  12.     Application.DisplayAlerts = True

  13. End Sub
複製代碼
您可以參考看看.

savefile.xlsm

17.92 KB, 下載次數: 0

售價: 1 金錢  [記錄]  [購買]

回復 支持 反對

使用道具 舉報

發表於 2017-10-17 15:04:17 | 顯示全部樓層
預設目錄的寫法.
  1. Private Sub CommandButton1_Click()


  2.     Application.DisplayAlerts = False
  3.    
  4.    
  5.     savename = Application.GetSaveAsFilename(InitialFileName:="C:\Desktop\", fileFilter:="Exel Files (*.xlsx), *.xlsx")
  6.    
  7.     If savename <> False Then
  8.         ActiveSheet.Shapes.Range(Array("CommandButton1")).Select
  9.         Selection.Delete
  10.         ActiveWorkbook.SaveAs Filename:=savename, FileFormat:=xlNormal
  11.     End If
  12.     Application.DisplayAlerts = True

  13. End Sub
複製代碼


savefile.xlsm

20.01 KB, 下載次數: 0

售價: 1 金錢  [記錄]  [購買]

回復 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

 ㄚ母滴雞湯
 員林香純滴雞精

Archiver|手機版|小黑屋|彰化一整天的論壇(Excel,Office)  |网站地图

GMT+8, 2018-1-17 01:38 , Processed in 0.040762 second(s), 13 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表