2015-02-24 26 views
1

已經在本網站上開發了具有精確示例的代碼,但不會運行並停止在SaveAs...行。任何人都能發現我的錯誤嗎這個SaveAs語法有或沒有防止執行?

我得到這個錯誤:

enter image description here

然而路徑C:\dads\Downloads\確實存在,該文件不是由另一程序使用,它有一個不同的名稱。我錯過了什麼?

Option Explicit 

Sub PickupRoutes_Click() 

    Dim Rng As Range 
    Dim Lrow As Integer, NewFile As String 

    Lrow = 7 
    Set Rng = ActiveSheet.Range(Cells(2, 33), Cells(Lrow, 38)) 

    '~~> Copy the range from the current Workbook 
    Rng.Select 
    Rng.Copy 

    'Establish a new Workbook and paste range 
    Application.Workbooks.Add 
    ActiveWorkbook.ActiveSheet.Range("A1").Select 

    '~~> Paste rng in Cell A1. 
    ActiveWorkbook.ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteValues, _ 
     Operation:=xlNone, SkipBlanks:=False, Transpose:=False 

    '~~>. Save the file 
    NewFile = "C:\dads\Downloads\" & "PlanMyRoute_" & _ 
     Format(Date, "mm-dd-yyyy") & ".xlsm" 
    ActiveWorkbook.SaveAs NewFile, _ 
     FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False 
    ActiveWorkbook.Close SaveChanges:=False 
    MsgBox "PlanMyRoute file has been saved " 

End Sub 
+0

我猜你路徑忘記'Users':'NEWFILE = 「C:\用戶\爸爸\下載\」 &...' – 2015-02-24 06:06:13

+0

所示的路徑屏幕截圖看起來不符合您發佈的代碼? – 2015-02-24 06:48:42

+1

嘗試'NewFile = environ(「USERPROFILE」)&「\ Downloads \ PlanMyRoute_」&Format(Date,「mm-dd-yyyy \。\ x \ l \ s \ m」)''。如果你不是*爸爸*可能會有權限問題。 – Jeeped 2015-02-24 07:09:10

回答

0

如果文件路徑不存在,則錯誤消息將處理看起來像內存地址的內容,這就是錯誤消息和代碼不匹配的原因。

看起來您缺少路徑中的Users目錄。

更改爲:

NewFile = "C:\Users\dads\Downloads\" & "PlanMyRoute_" & _ 
    Format(Date, "mm-dd-yyyy") & ".xlsm" 
相關問題