Thread: error 1004
View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Barb Reinhardt Barb Reinhardt is offline
external usenet poster
 
Posts: 3,355
Default error 1004

I tweaked some things, but I don't know what a couple of variables are, so
can't go from there.

Option Explicit

Sub UpdateSave()
Dim OrigFile As String
Dim OldFileName As String
Dim MacroPath As String
Dim MacroFileName As String
Dim myWB As Workbook

MacroPath = "??"
MacroFileName = "??"

OrigFile = ThisWorkbook.Path & "\" & ThisWorkbook.Name
ThisWorkbook.SaveAs Left(ThisWorkbook.FullName, _
Len(ThisWorkbook.FullName) - 4) & "_old_" & Format(Date, "mmddyyyy")
OldFileName = ThisWorkbook.Name
Set myWB = Nothing
On Error Resume Next
Set myWB = Workbooks.Open(Filename:=MacroPath & MacroFileName,
UpdateLinks:=False, _
ReadOnly:=True)
On Error GoTo 0

If myWB Is Nothing Then
MsgBox ("Workbook " & MacroFileName & " was not opened.")
Exit Sub
End If
Application.Run "'" & MacroFileName & "'" & "!ModUpdate.MacroUpDate", _
MacroFileName, OldFileName
On Error GoTo 0

MsgBox ("Original file is saved as " & OldFileName & "." & Chr$(10))
ThisWorkbook.Save
Application.DisplayAlerts = False
Workbooks(MacroFileName).SaveAs Filename:=OrigFile
Application.DisplayAlerts = True
ThisWorkbook.Close
End Sub

--
HTH,
Barb Reinhardt

If this post was helpful to you, please click YES below.



"Crazyhorse" wrote:

Sub UpdateSave()
OrigFile = ThisWorkbook.Path & "\" & ThisWorkbook.Name
ThisWorkbook.SaveAs Left(ThisWorkbook.FullName,
Len(ThisWorkbook.FullName) - 4) & "_old_" & Format(Date, "mmddyyyy")
OldFileName = ThisWorkbook.Name
Workbooks.Open fileName:=MacroPath & MacroFileName, UpdateLinks:=False,
ReadOnly:=True
On Error Resume Next
Application.Run "'" & MacroFileName & "'" & "!ModUpdate.MacroUpDate",
MacroFileName, OldFileName
On Error GoTo 0
MsgBox ("Original file is saved as " & OldFileName & "." & Chr$(10))
ThisWorkbook.Save
Application.DisplayAlerts = False
Workbooks(MacroFileName).SaveAs fileName:=OrigFile
Application.DisplayAlerts = True
ThisWorkbook.Close
End Sub

The error msg is on this line of code
Application.Run "'" & MacroFileName & "'" & "!ModUpdate.MacroUpDate",
MacroFileName, OldFileName

Thanks in advance.