通过VBA保存XLS文件

我创build了一个允许XLS文件向所需人员发送电子邮件并附加XLS文件的macros。

我将如何将文件保存到一个位置?

我有— ThisWorkbook.SaveAs "testsave" & Format(Now, "dd-mm-yy") & ".xls"

但我希望将文档保存到除D:以外的内部网页上。

我不想创build一个新的保存,我宁愿它覆盖现有的文档。

完整的代码现在正在保存一个新的文档,而不是覆盖原来的

Sub sendemail()

 'Save the form to the default location with todays date Workbook.Save "HolidayReq" & Format(Now, "dd-mm-yy") & ".xls" 'Create the email and attach the form to it Dim OutApp As Object Dim OutMail As Object Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) On Error Resume Next With OutMail .To = "[""]" .cc = "" .BCC = "" .Subject = "New Holiday Request on " & Format(Now(), "dd/mm/yyyy") & " by " & Range("C2") & "" .Body = "" .Send End With On Error GoTo 0 Set OutMail = Nothing Set OutApp = Nothing 

结束小组

您应该使用Application.Save而不是SaveAs。

这将覆盖您的原始文件

 Application.ThisWorkbook.Save 

如果要将文件保存到其他path,则可以附加一个path,并使用SaveAs将原始文件的名称

 Application.DisplayAlerts = False Application.ThisWorkbook.SaveAs "C:\Temp\" & ThisWorkbook.Name Application.DisplayAlerts = True 

(如果您不禁用警报,那么如果文件已经存在,您将收到提示。)


如果要将文件保存为不同的types,则可以使用另存为但指定文件types。

 Application.ThisWorkbook.SaveAs ThisWorkbook.Path & "\test.html", xlHtml 

这里是各种Excel FileType常量的列表