Page 1 of 1

การสั่ง Save โดย VBA

Posted: Tue May 22, 2012 1:10 pm
by yodpao.b
การสั่ง Save โดย VBA
เรียนอาจาร์ยช่วยแก้ให้หน่อยครับ

Code: Select all

Sub MacroReportSaveAs()
Dim fileSaveName As String
fileSaveName = Application.GetSaveAsFilename(fileFilter:="Excel Files (*.xls), *.xls")
ActiveWorkbook.SaveAs Filename:=fileSaveName
If fileSaveName <> "False" Then
    MsgBox "  Save as  " & fileSaveName & "  และ คลิกปุ่ม OK เพื่อปิดไฟล์นี้  ", vbExclamation, "    ชื่อไฟล์และสถานที่จัดเก็บไฟล์"
End If
    Range("A1").Select
    ActiveWorkbook.Close            '  สั่งปิดไฟล์ที่ save
End Sub
จากโคดด้านบน สั่ง Save ได้ถูกต้อง
แต่เมื่อเราสั่ง Cancle ตามภาพด้านล่าง
เครื่องจะสั่งให้ Save อัตโนมัต โดยใช้ชื่อ "False.xls"
qqq.png
ความต้องการคือ เมื่อเราสั่ง Cancle เครื่องจะไม่ Save และต้องปิดไฟล์ด้วย

Re: การสั่ง Save โดย VBA

Posted: Tue May 22, 2012 2:51 pm
by snasui
:D ลองปรับเป็นตามด้านล่างครับ

Code: Select all

Sub MacroReportSaveAs()
Dim fileSaveName As String
fileSaveName = Application.GetSaveAsFilename(fileFilter:="Excel Files (*.xls), *.xls")
If fileSaveName <> "False" Then
    ActiveWorkbook.SaveAs Filename:=fileSaveName
    MsgBox "  Save as  " & fileSaveName & "  และ คลิกปุ่ม OK เพื่อปิดไฟล์นี้  ", vbExclamation, "    ชื่อไฟล์และสถานที่จัดเก็บไฟล์"
End If
    Range("A1").Select
    ActiveWorkbook.Close False'  สั่งปิดไฟล์ที่ save
End Sub

Re: การสั่ง Save โดย VBA

Posted: Wed May 23, 2012 2:47 pm
by yodpao.b
ขอบคุณมากครับ