Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
I need to import many worksheets from different locations into one workbook.
Can I have a macro set up that will ask the user what file needs to be imported and as soon as the user enters the filename/filepath name . That file gets imported in the same format. Please help. |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Try this:
Sub GetSheets() Dim s As String Dim fd As FileDialog Dim ffs As FileDialogFilters Dim wb As Workbook Dim xb As Workbook Set xb = ActiveWorkbook 'Get user to pick file Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd Set ffs = .Filters With ffs .Clear .Add "Excel Files", "*.xls" End With .AllowMultiSelect = False If .Show Then s = .SelectedItems(1) End With 'Turn off prompts Application.DisplayAlerts = False 'Open chosen workbook Set wb = Workbooks.Open(s, False) Dim ws As Worksheet For Each ws In wb.Worksheets ws.Copy xb.Worksheets(1) Next ws 'Close workbook wb.Close 'Switch prompts back on Application.DisplayAlerts = True End Sub "kaler" wrote: I need to import many worksheets from different locations into one workbook. Can I have a macro set up that will ask the user what file needs to be imported and as soon as the user enters the filename/filepath name . That file gets imported in the same format. Please help. |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Sam,
Thaks for your help. I tried the following code and it showed a run time error. Mesage reads, method 'copy' of object'worksheet failed. Any suggestions? Thank you. Sub GetSheets() Dim s As String Dim fd As FileDialog Dim ffs As FileDialogFilters Dim wb As Workbook Dim xb As Workbook Set xb = ActiveWorkbook 'Get user to pick file Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd Set ffs = .Filters With ffs .Clear .Add "Excel Files", "*.xls" End With .AllowMultiSelect = False If .Show Then s = .SelectedItems(1) End With 'Turn off prompts Application.DisplayAlerts = False 'Open chosen workbook Set wb = Workbooks.Open(s, False) Dim ws As Worksheet For Each ws In wb.Worksheets ws.Copy xb.Worksheets(1) Next ws 'Close workbook wb.Close 'Switch prompts back on Application.DisplayAlerts = True End Sub "kaler" wrote: I need to import many worksheets from different locations into one workbook. Can I have a macro set up that will ask the user what file needs to be imported and as soon as the user enters the filename/filepath name . That file gets imported in the same format. Please help. |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Hi,
My code assumes that the book you point it at isn't open, so check that first. What version of excel do you have? I'm in excel 2003. "kaler" wrote: Sam, Thaks for your help. I tried the following code and it showed a run time error. Mesage reads, method 'copy' of object'worksheet failed. Any suggestions? Thank you. Sub GetSheets() Dim s As String Dim fd As FileDialog Dim ffs As FileDialogFilters Dim wb As Workbook Dim xb As Workbook Set xb = ActiveWorkbook 'Get user to pick file Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd Set ffs = .Filters With ffs .Clear .Add "Excel Files", "*.xls" End With .AllowMultiSelect = False If .Show Then s = .SelectedItems(1) End With 'Turn off prompts Application.DisplayAlerts = False 'Open chosen workbook Set wb = Workbooks.Open(s, False) Dim ws As Worksheet For Each ws In wb.Worksheets ws.Copy xb.Worksheets(1) Next ws 'Close workbook wb.Close 'Switch prompts back on Application.DisplayAlerts = True End Sub "kaler" wrote: I need to import many worksheets from different locations into one workbook. Can I have a macro set up that will ask the user what file needs to be imported and as soon as the user enters the filename/filepath name . That file gets imported in the same format. Please help. |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Hi,
The file is closed and it is still showing that run time error. May be it is the version because I am in excel 2002. |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Try re-typing the ws.copy below the line where you get the error and see what
intelli-sense says, it might be different syntax in 2002? "kaler" wrote: Hi, The file is closed and it is still showing that run time error. May be it is the version because I am in excel 2002. |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro in excel
Sam,
I tried typing in to make sure it was not a syntax error. It is not really syntax but looks like someting else needs to be changed in the code. Any input from you will really help. Thanks. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Macro Help Needed - Excel 2007 - Print Macro with Auto Sort | Excel Worksheet Functions | |||
Call macro stored in Excel workbook from Outlook's macro | Excel Programming | |||
Need syntax for RUNning a Word macro with an argument, called from an Excel macro | Excel Programming | |||
translate lotus 1-2-3 macro into excel macro using excel 2000 | Excel Programming | |||
Excel Macro Issue Trying to autorun Macro Upon Opening Worksheet | Excel Programming |