![]() |
Code works, but is slow
Hello again, Here is a code that works fine, however, because of the number of files it has to scan (or look through) it takes as much as 2 minutes to open the file it's looking for. Below I provide the code and the path it takes. Is there a way to modify this code to look in a certain folder on the drive to speed up its search process. CODE: Sub AGetSheet() 'subroutine to open a filename from a cell, looking in the specified drive With Application.FileSearch ..NewSearch ..LookIn = "I:\" ..SearchSubFolders = True ..Filename = Range("P12") If .Execute 0 Then Workbooks.Open .FoundFiles(1) End If End With End Sub PATH: I:\PLANT\LAB\Lab Tech Stuff\2005 FINISH MILL SHEETS\#4 FINISH MILL 2005 In the cell P12, I have #4 Finish Mill 2005, which excel does find it, but again its not fast enough; the drive is very large. Can the code reference excel to look in, say the 2005 FINISH MILL SHEETS (which is the folder where the file is) to shorten the search? Sorry so long, Thanks, EMoe -- EMoe ------------------------------------------------------------------------ EMoe's Profile: http://www.excelforum.com/member.php...o&userid=23183 View this thread: http://www.excelforum.com/showthread...hreadid=495925 |
Code works, but is slow
Hi EMoe,
If you know the folder name, why search? Try: '============= Public Sub AGetSheet() Dim sFileName As String Const sPath As String = _ "I:\PLANT\LAB\Lab Tech Stuff\2005 FINISH MILL SHEETS\" sFileName = Range("P12").Value If Not Right(sFileName, 4) < ".xls" Then sFileName = sFileName & ".xls" End If Workbooks.Open Filename:=sPath & sFileName End Sub '<<============= --- Regards, Norman "EMoe" wrote in message ... Hello again, Here is a code that works fine, however, because of the number of files it has to scan (or look through) it takes as much as 2 minutes to open the file it's looking for. Below I provide the code and the path it takes. Is there a way to modify this code to look in a certain folder on the drive to speed up its search process. CODE: Sub AGetSheet() 'subroutine to open a filename from a cell, looking in the specified drive With Application.FileSearch NewSearch LookIn = "I:\" SearchSubFolders = True Filename = Range("P12") If .Execute 0 Then Workbooks.Open .FoundFiles(1) End If End With End Sub PATH: I:\PLANT\LAB\Lab Tech Stuff\2005 FINISH MILL SHEETS\#4 FINISH MILL 2005 In the cell P12, I have #4 Finish Mill 2005, which excel does find it, but again its not fast enough; the drive is very large. Can the code reference excel to look in, say the 2005 FINISH MILL SHEETS (which is the folder where the file is) to shorten the search? Sorry so long, Thanks, EMoe -- EMoe ------------------------------------------------------------------------ EMoe's Profile: http://www.excelforum.com/member.php...o&userid=23183 View this thread: http://www.excelforum.com/showthread...hreadid=495925 |
Code works, but is slow
Thanks Norman. Were getting close, however I'm getting a runtime error on line: Workbooks.Open Filename:=sPath & sFileName I checked, and the filename is correct. I tried it with just the name, with and without the .xls extension also by placing a \ slash in front of the filename, but no dice. Wha am I missing? Thanks, EMo -- EMo ----------------------------------------------------------------------- EMoe's Profile: http://www.excelforum.com/member.php...fo&userid=2318 View this thread: http://www.excelforum.com/showthread.php?threadid=49592 |
Code works, but is slow
I'd say check again--either the path or the value in that cell.
You may want to put: msgbox sPath & sFileName before the line that blows up so you can see what's happening. EMoe wrote: Thanks Norman. Were getting close, however I'm getting a runtime error on line: Workbooks.Open Filename:=sPath & sFileName I checked, and the filename is correct. I tried it with just the name, with and without the .xls extension, also by placing a \ slash in front of the filename, but no dice. What am I missing? Thanks, EMoe -- EMoe ------------------------------------------------------------------------ EMoe's Profile: http://www.excelforum.com/member.php...o&userid=23183 View this thread: http://www.excelforum.com/showthread...hreadid=495925 -- Dave Peterson |
Code works, but is slow
Hi Emoe,
In addition to Dave's suggestion, try changing: If Not Right(sFileName, 4) < ".xls" Then to: If Not LCase(Right(sFileName, 4)) < ".xls" Then --- Regards, Norman "EMoe" wrote in message ... Thanks Norman. Were getting close, however I'm getting a runtime error on line: Workbooks.Open Filename:=sPath & sFileName I checked, and the filename is correct. I tried it with just the name, with and without the .xls extension, also by placing a \ slash in front of the filename, but no dice. What am I missing? Thanks, EMoe -- EMoe ------------------------------------------------------------------------ EMoe's Profile: http://www.excelforum.com/member.php...o&userid=23183 View this thread: http://www.excelforum.com/showthread...hreadid=495925 |
Code works, but is slow
Thanks for the replies, I will try to work with the codes tommorrow. It's time for me to go home now from work. Will post results tommorrow. Thanks, EMoe -- EMoe ------------------------------------------------------------------------ EMoe's Profile: http://www.excelforum.com/member.php...o&userid=23183 View this thread: http://www.excelforum.com/showthread...hreadid=495925 |
Code works, but is slow
Hello Programmers & Merry Christmas!!! Thanks Norman, Dave & Don! You were all right about the codes. I checked several times the path file name, and they were right. But code still gave me an error. The problem was not with the spelling of the file name, but with th file name itself. *File Name:* #4 FINISH MILL DEC.2005.xls The dot between DEC & 2005 caused excel a problem. It was considerin 2005 to be a file extension. I removed the dot, and every thing wen smoothly. Sorry, I should have provided the file name in the very beginning. Wel 1 issue resolved, and one to go. Please see my post VBA to open .md file. Thanks again, Regards, EMo -- EMo ----------------------------------------------------------------------- EMoe's Profile: http://www.excelforum.com/member.php...fo&userid=2318 View this thread: http://www.excelforum.com/showthread.php?threadid=49592 |
All times are GMT +1. The time now is 01:41 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com