View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Martin Fishlock[_4_] Martin Fishlock[_4_] is offline
external usenet poster
 
Posts: 32
Default want to save, print and close wb

Hi Sakung,
Try
' define constants for clarity
Const filepath As String = "c:\temp\test\"
Const filename As String = "pentagon"
Const fileext As String = ".xls"

Sub SaveandPrintout()

FileNum = ThisWorkbook.Sheets("Invoice").[B2].Value
FileNumStr = Format(FileNum, "0000")
' save it
ActiveWorkbook.SaveAs _
filename:=filepath & filename & FileNumStr & fileext, _
FileFormat:=xlNormal, _
Password:="", _
WriteResPassword:="", _
ReadOnlyRecommended:=False, _
CreateBackup:=False
' print it out
ActiveWorkbook.SelectedSheets.PrintOut _
Copies:=1, _
Collate:=True
' close it
ActiveWorkbook.Close SaveChanges:=False

End Sub

I changed the order as you said that you wanted it saved first, added some
constants and corrected your reference to the active workbook.

--
HTHs Martin


"sakung" wrote:


i'm new in VBE and need some advice on my work. I would like to save
invoice to another name and print that new workbook and then close it
by using macro.

On my code, run the Save As command to create a new copy
of the Workbook(pentagon0002.xls), then don't open up that workbook,
just close it.
that will give me the error "Object Required". What else I need to
fix?


Sub SaveandPrintout()

ActiveWindows.SelectSheets.PrintOut Copies:=1, Collate:=True

FileNum = ThisWorkbook.Sheets("Invoice").[B2].Value
FileNumStr = Format(FileNum, "0000")
ActiveWorkbook.SaveAs Filename:="c:\temp\test\pentagon" & FileNumStr &
".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

ActiveWindows.Close SaveChanges:=False

End Sub


--
sakung
------------------------------------------------------------------------
sakung's Profile: http://www.excelforum.com/member.php...o&userid=37230
View this thread: http://www.excelforum.com/showthread...hreadid=570623