Runtime Error 1004

luvisho

New Member
Joined
Oct 25, 2014
Messages
5
Hi,

I need some help here. Previously it was working fine with the exact same code.

And lately, it has been showing runtime error 1004 with the highlighted as per below.

I have no idea what is wrong when there was no change from the previous. Please help....

Sub SaveInvWithNewName()
Dim NewFN As Variant
' Copy Invoice to a new workbook
ActiveSheet.Copy
NewFN = "Z:\HoClinic\Official Receipt\Inv" & Range("M4").Value & ".xlsx"
ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
NextInvoice
End Sub
 

Excel Facts

Format cells as time
Select range and press Ctrl+Shift+2 to format cells as time. (Shift 2 is the @ sign).
Welcome to the MrExcel board!

One possible cause for that error would be if cell M4 contains a character that is not allowed as part of a file name. For example "ab?d"
 
Upvote 0
Another possible reason is that the path "Z:\HoClinic\Official Receipt\" no longer exists
 
Upvote 0
Post the exact message that you get when this code runs & errors.
Rich (BB code):
Sub SaveInvWithNewName()
  Dim NewFN As Variant
  Dim s As String
  
  On Error GoTo PreExit
  s = "|" & Range("M4").Text & "|"
  
  ' Copy Invoice to a new workbook
  ActiveSheet.Copy
  NewFN = "Z:\HoClinic\Official Receipt\Inv" & Range("M4").Value & ".xlsx"

  ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook
  ActiveWorkbook.Close
  NextInvoice

PreExit:
  If Err.Number = 1004 Then
    MsgBox Len(s) & ":" & s
  End If

End Sub
 
Upvote 0
Post the exact message that you get when this code runs & errors.
Rich (BB code):
Sub SaveInvWithNewName()
  Dim NewFN As Variant
  Dim s As String
  
  On Error GoTo PreExit
  s = "|" & Range("M4").Text & "|"
  
  ' Copy Invoice to a new workbook
  ActiveSheet.Copy
  NewFN = "Z:\HoClinic\Official Receipt\Inv" & Range("M4").Value & ".xlsx"

  ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook
  ActiveWorkbook.Close
  NextInvoice

PreExit:
  If Err.Number = 1004 Then
    MsgBox Len(s) & ":" & s
  End If

End Sub

Now shows 4:|57|

what does it mean?

howeveR, i still cant find the file when i save it.
 
Upvote 0
Now shows 4:|57|

what does it mean?
It means there should be no problems with the file name.

howeveR, i still cant find the file when i save it.
No, that's because an error still occurred so the file was not saved.

Just test the path by running this macro by itself. What is the result?

Code:
Sub CheckFolder()
  If Dir("Z:\HoClinic\Official Receipt\", vbDirectory) <> vbNullString Then
    MsgBox "Folder exists"
  Else
    MsgBox "Folder does not exist"
  End If
End Sub
 
Upvote 0
It means there should be no problems with the file name.

No, that's because an error still occurred so the file was not saved.

Just test the path by running this macro by itself. What is the result?

Code:
Sub CheckFolder()
  If Dir("Z:\HoClinic\Official Receipt\", vbDirectory) <> vbNullString Then
    MsgBox "Folder exists"
  Else
    MsgBox "Folder does not exist"
  End If
End Sub

Code as per below.

Sub NextInv()
Range("M4").Value = Range("M4").Value + 1
Range("F9").ClearContents


End Sub




Sub SaveInvWithNewName()


Dim NewFN As Variant
' Copy Invoice to a new workbook
ActiveSheet.Copy
NewFN = "Z:\HoClinic\Official Receipt\Inv" & Range("M4").Value & ".xlsx"


ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
NextInv





End Sub






Sub CheckFolder()
If Dir("Z:\HoClinic\Official Receipt\", vbDirectory) <> vbNullString Then
MsgBox "Folder exists"
Else
MsgBox "Folder does not exist"
End If



End Sub

It still shows the same error
 
Upvote 0

Forum statistics

Threads
1,223,157
Messages
6,170,418
Members
452,325
Latest member
BlahQz

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top