View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
losmac[_2_] losmac[_2_] is offline
external usenet poster
 
Posts: 44
Default How to Copy worksheet to new workbook with dynamic name?

Here You a
Sub ExportDataToNewWrkBook()
Dim wbk As Workbook
Dim wsh As Worksheet
Dim sCell As String

Set wsh = ThisWorkbook.ActiveSheet
sCell = ActiveCell.Address
wsh.Cells.Select
wsh.Cells.Copy
Set wbk = Workbooks.Add
With wbk
.Worksheets(1).Range("A1").Select
.Worksheets(1).Paste
.SaveAs "D:\ExportData" & Format(Date, "mmddyy")
& ".xls"
End With
wsh.Activate
wsh.Range(sCell).Select

End Sub


-----Original Message-----
Greetings All,

We're trying to create a macro to copy a worksheet to

another workbook
instead of copying to the default name of 'Book1' it

should copy to the new
workbook with the name of 'ExportDataMMDDYY where MMDDYY

is the current
month day and year. The big questions are, 1) is it

possible to have it
create the new workbook with a name such as that above,

without first saving
the workbook? (just as book1.xls is the default book

name that hasn't yet
been saved) and 2) how do I give the new workbook a name

of
ExportDataMMDDYY?

At the risk of being redundant, here's a quick practical

example. The source
workbook (SourceBook) will have 15 worksheet tabs. The

user may run the
macro on any one of the tabs at a time. Each time the

macro is run it
SHOULD copy the contents of the active worksheet into the

new workbook with
the name ExportData123003 and then return to the

SourceBook.

The code that I have managed to create so far is listed

below. What I can't
figure out is how to have it name the new book with the

file name format
indicated above. Any help would be HUGELY appreciated.

Thx, Ashleigh

---------My Sample Code Follows---------------
Sub GoatFeet()

CurrentBookName = ActiveWorkbook.Name

' Copy the active worksheet to a new workbook, ideally

it would copy to a
workbook
' titled 'ExportDataMMDDYY where MMDDYY is the current

month day and year

ActiveSheet.Copy

' Remove all formulas within the worksheet by copying

and pasting only
values
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues,

Operation:=xlNone, SkipBlanks:=
_
False, Transpose:=False
Application.CutCopyMode = False

' Return to the original workbook.
'
Workbooks(CurrentBookName).Activate




.