Home |
Search |
Today's Posts |
#18
Posted to microsoft.public.excel.programming
|
|||
|
|||
Code looping through files
Tom Thank you,
I ran it and it ran to the first msgbox and then displayed the first file name. WHen I selected ok it errored out again with the 1004 error and the debug highlighted this area of code Set wb = Workbooks.Open(list(i)) Any help?? BOb "Tom Ogilvy" wrote in message ... Try it like this Sub AllFolderFiles() Dim wb As Workbook Dim TheFile As String Dim MyPath As String Dim list() As String Dim i As Long ReDim list(1 To 1) MyPath = "C:\Temp" ChDrive MyPath ChDir MyPath TheFile = Dir("*.xls") Do While TheFile < "" list(UBound(list)) = MyPath & "\" & TheFile ReDim Preserve list(1 To UBound(list) + 1) TheFile = Dir Loop ReDim Preserve list(1 To UBound(list) - 1) For i = 1 To UBound(list) Set wb = Workbooks.Open(list(i)) MsgBox wb.FullName wb.Close Next i End Sub -- Regards, Tom Ogilvy "rjr" wrote in message .. . Gary my apologies, I used your code as a standalone and the first loop worked fine and opened the first file, but when it did the loop errored out as did Otto's, on the second round. This is the same thing that happened with Otto's code and does it consistentantly with my desktop and my laptop. I'm sorry for not getting back with you on this. Can you think of a reason your 2003 would work and mine wouldn't? Bob Reynolds "Gary Keramidas" <GKeramidasATmsn.com wrote in message ... this works for me Sub AllFolderFiles() Dim wb As Workbook Dim TheFile As String Dim MyPath As String MyPath = "C:\Temp" TheFile = Dir(MyPath & "\" & "*.xls") Do While TheFile < "" Set wb = Workbooks.Open(MyPath & "\" & TheFile) MsgBox wb.FullName wb.Close TheFile = Dir() Loop End Sub -- Gary "rjr" wrote in message .. . Hello again to all, I wish it were that simple. Nope I'm windows XP Media Center Edition with all current updates and a valid updated Office Professional product. As a side note I've also placed it on my Dell D520 laptop with Windoes XP Professional and Office 2003 with the exact same results. Since it works for everyone else it obviously has to be something with my computers, but WHAT? My dell laptop is relatively clean without a lot of additional programs and the results are the same. That's why I think the problem lies with my machine's setup... Bob R "Chip Pearson" wrote in message ... Otto, This is out of the blue, but perhaps the user having the problem is using a Macintosh? If this proves to be the case, the code will fail on the line indicated because Macs don't use the '\' character as a path separator. Instead, they use, I think, a ':' character. Instead of hard coding the '\', use Application.PathSeparator. E.g., Set wb = Workbooks.Open(MyPath & Application.PathSeparator & TheFile) The code you posted works fine for me in Excel 2007 for Windows. -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com (email address is on the web site) "Otto Moehrbach" wrote in message ... Tom Thanks for your help as well as Dave and Chip. Here's what the OP and I just did to establish a hard starting point. He set all the code I had written for him aside. Instead, he used the macro from: http://www.contextures.com/xlfaqMac.html#LoopBooks with NO CHANGES of any kind. No other macro or macro call was used. He established a path in his computer to match that used in the macro and placed his test files in that folder. He ran the macro. The error message is: Run-time error '1004' Method 'Open' of object 'Workbook' failed. The highlighted code line is the "Set wb = ............" The full macro is: Sub AllFolderFiles() Dim wb As Workbook Dim TheFile As String Dim MyPath As String MyPath = "C:\Temp" ChDir MyPath TheFile = Dir("*.xls") Do While TheFile < "" Set wb = Workbooks.Open(MyPath & "\" & TheFile) MsgBox wb.FullName wb.Close TheFile = Dir Loop End SubWe will try any suggestion you and the others can come up with. Thanks for your time. Otto"Tom Ogilvy" wrote in message ... Since you don't show the code, have him send you the file that fails to open and test the code with that file. Perhaps the file is damaged or not a file Excel will open. -- Regards, Tom Ogilvy "Otto Moehrbach" wrote in message ... Excel XP & Win XP I'm helping an OP with a project. The code loops through all the files in a folder, opens each, does things, closes the file and opens the next file, etc. The code is placed in the Personal.xls file. It works fine for me. It fails on opening the first file for him (will not open the file). An error is produced saying that opening the file failed. He has Excel 2003. He sent me his Personal.xls file. I changed the name and put it in my XLSTART folder. It works fine with my path. I created his path on my computer and that works fine too. I checked the VBE - Tools - References. The only thing I have checked that he doesn't is "Microsoft Forms 2.0 Object Library". He doesn't have anything like that to check. Does anyone have any ideas of what I could do? Thanks for your time. Otto |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Looping thru Files In FolderSub | Excel Programming | |||
Looping through excel files to add to a new workbook | Excel Programming | |||
Looping through files in a folder | Excel Programming | |||
Looping thru files extracting data | Excel Programming | |||
Looping thru files | Excel Programming |