下面的代码工作正常,现在似乎不喜欢".xlsm"
部分。问题在于所有PC。我尝试使用Filename=
和一些变体并将其固定为"."
(期间),它在".xlsm"
中不接受,删除期间并且它很好但是然后登陆SharePoint作为未知文件(没有文件扩展名)。任何建议表示赞赏!
Sub SUBMIT()
Dim FName As String
FName = Range("E3").Text
FDate = Range("I3").Text
If Range("E3") = "" Then
MsgBox "Please Enter Your Name"
Range("E3").Select
ElseIf Range("I3") = "" Then
MsgBox "Please Enter Fortnight Ending Date"
Range("I3").Select
ElseIf Range("I3") <> "" Then
If MsgBox("Are you sure? (Have you entered your supervisor(s) and Fortnight End Date in the top panel ?", vbYesNo) = vbNo Then Exit Sub
ActiveWorkbook.SaveAs ("https://*****.sharepoint.com/corp/payroll/Timesheets" & FName & " " & FDate & " " & "Timesheet" & "xls")
MsgBox "Timesheet Submitted"
End If
End Sub
答案 0 :(得分:0)
您应提供文件路径不带扩展名,并使用FileFormat
函数的ActiveWorkbook.SaveAs()
参数。
根据您的情况,应将行更改为此
ActiveWorkbook.SaveAs ("https://*****.sharepoint.com/corp/payroll/Timesheets" & FName & " " & FDate & " " & "Timesheet"), 52
我在末尾添加的52
是here中描述的xlOpenXMLWorkbookMacroEnabled
的值
下面的代码在Win7 Excel2013上对我来说很合适
Sub StackOverflow()
ActiveWorkbook.SaveAs "C:\Temp\myfile", 52
End Sub