ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Logic (https://www.excelbanter.com/excel-programming/417072-logic.html)

MurrayB

Logic
 
I have 30 excel workbooks for each year, say year 6,7 and 8, so in total 90
workbooks. Each of the workbooks are stored in this pathname ending in the
year for instance for Year 6 it would be this :-
\\SVR-SBS\FolderName\Folder6

I want to write a Macro to be able to open all the workbooks for one year
where an InputBox asks me which year I need and the answer then causes the
macro to open all 30 workbooks in whatever year I want.

Firstly, is there a way I can list the names of all the workbooks and
secondly if I cant, how do I write code that will only go through the list
of files once, based on the path obtained from the InputBox?


joel

Logic
 
Sub getbooks()

folder = "\\SVR-SBS\FolderName\Folder"
Response = InputBox("Enter Year : ")
If Response < "" Then
folder = folder & Response & "\"
FName = Dir(folder & "*.xls")
Do While FName < ""
Set bk = Workbooks.Open(filename:=folder & FName)
'enter your code here


bk.Close savechanges:=False
FName = Dir()
Loop
Else
MsgBox ("Cannot OPen the year - Exiting Sub")
End If

End Sub


"MurrayB" wrote:

I have 30 excel workbooks for each year, say year 6,7 and 8, so in total 90
workbooks. Each of the workbooks are stored in this pathname ending in the
year for instance for Year 6 it would be this :-
\\SVR-SBS\FolderName\Folder6

I want to write a Macro to be able to open all the workbooks for one year
where an InputBox asks me which year I need and the answer then causes the
macro to open all 30 workbooks in whatever year I want.

Firstly, is there a way I can list the names of all the workbooks and
secondly if I cant, how do I write code that will only go through the list
of files once, based on the path obtained from the InputBox?



Rick Rothstein

Logic
 
To open all workbooks in the specified folder number, give this a try...

Sub OpenWorkbooks()
Dim Path As String
Dim Answer As String
Dim FileName As String
Answer = InputBox("Please enter folder number...")
If IsNumeric(Answer) Then
' Note: Do not put trailing backslash on path
Path = "\\SVR-SBS\FolderName\Folder"
FileName = Dir(Path & "\" & Answer & ".xls")
Do While Len(FileName) 0
Application.Workbooks.Open Path & FileName
FileName = Dir
Loop
End If
End Sub

--
Rick (MVP - Excel)


"MurrayB" wrote in message
...
I have 30 excel workbooks for each year, say year 6,7 and 8, so in total 90
workbooks. Each of the workbooks are stored in this pathname ending in the
year for instance for Year 6 it would be this :-
\\SVR-SBS\FolderName\Folder6

I want to write a Macro to be able to open all the workbooks for one year
where an InputBox asks me which year I need and the answer then causes the
macro to open all 30 workbooks in whatever year I want.

Firstly, is there a way I can list the names of all the workbooks and
secondly if I cant, how do I write code that will only go through the list
of files once, based on the path obtained from the InputBox?



MurrayB

Logic
 
Thanks Nick - will give it a shot!


"Rick Rothstein" wrote in message
...
To open all workbooks in the specified folder number, give this a try...

Sub OpenWorkbooks()
Dim Path As String
Dim Answer As String
Dim FileName As String
Answer = InputBox("Please enter folder number...")
If IsNumeric(Answer) Then
' Note: Do not put trailing backslash on path
Path = "\\SVR-SBS\FolderName\Folder"
FileName = Dir(Path & "\" & Answer & ".xls")
Do While Len(FileName) 0
Application.Workbooks.Open Path & FileName
FileName = Dir
Loop
End If
End Sub

--
Rick (MVP - Excel)


"MurrayB" wrote in message
...
I have 30 excel workbooks for each year, say year 6,7 and 8, so in total
90 workbooks. Each of the workbooks are stored in this pathname ending in
the year for instance for Year 6 it would be this :-
\\SVR-SBS\FolderName\Folder6

I want to write a Macro to be able to open all the workbooks for one year
where an InputBox asks me which year I need and the answer then causes
the macro to open all 30 workbooks in whatever year I want.

Firstly, is there a way I can list the names of all the workbooks and
secondly if I cant, how do I write code that will only go through the
list of files once, based on the path obtained from the InputBox?




MurrayB

Logic
 
Thanks Joel - I will give it a try!!


"Joel" wrote in message
...
Sub getbooks()

folder = "\\SVR-SBS\FolderName\Folder"
Response = InputBox("Enter Year : ")
If Response < "" Then
folder = folder & Response & "\"
FName = Dir(folder & "*.xls")
Do While FName < ""
Set bk = Workbooks.Open(filename:=folder & FName)
'enter your code here


bk.Close savechanges:=False
FName = Dir()
Loop
Else
MsgBox ("Cannot OPen the year - Exiting Sub")
End If

End Sub


"MurrayB" wrote:

I have 30 excel workbooks for each year, say year 6,7 and 8, so in total
90
workbooks. Each of the workbooks are stored in this pathname ending in
the
year for instance for Year 6 it would be this :-
\\SVR-SBS\FolderName\Folder6

I want to write a Macro to be able to open all the workbooks for one year
where an InputBox asks me which year I need and the answer then causes
the
macro to open all 30 workbooks in whatever year I want.

Firstly, is there a way I can list the names of all the workbooks and
secondly if I cant, how do I write code that will only go through the
list
of files once, based on the path obtained from the InputBox?





All times are GMT +1. The time now is 02:51 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com