Identify a single item in a files collection without a For Each ... Next

sts023

Board Regular
Joined
Sep 1, 2008
Messages
102
Hi Guys.....

I strongly suspect that the answer to this will be blindingly obvious, but here goes....
The following code is the preamble to code which offers a filepicker if there is more than one file in a folder.
Having identified that there is just one file in the folder, the following code gets its name, but looks and feels idiotic.
Instead of the "For Each ... Next", what should I be doing?

(Note: the "gstr..." variables are Public string variables set in other modules. The Watch facility verifies that they are correctly populated.)
Code:
Dim strFolder           As String
Dim FSO                 As Object
Dim objFilesCollection  As Object
Dim objFile             As Object
  strFolder = gstrLatestsFolder & _
              "\" & gstrProvider & _
              "\" & gstrCompany & "\"
  Set FSO = CreateObject("Scripting.FileSystemObject")
  On Error Resume Next
  Set objFilesCollection = FSO.GetFolder(strFolder).Files
  If Err.Number = 0 Then
    If objFilesCollection.Count = 1 Then
      For Each objFile In objFilesCollection
        gstrLatestsFull = objFile.Name
      Next objFile
    End If
  End If
  On Error GoTo 0
I've tried various combinations of
Code:
Set objFile = objFilesCollection(1)
Set objFile = objFilesCollection.Files(1)
but nothing works.
Can any kind soul help?...
 

Gary McMaster

Well-known Member
Joined
Feb 8, 2009
Messages
1,977
Hi Steve,

Just a guess ...

Maybe the array is zero based and it should be:

Code:
Set objFile = objFilesCollection(0)
Gary
 

sts023

Board Regular
Joined
Sep 1, 2008
Messages
102
Gary....
Possible, but the error I get is something like "Object doesn't support that method"
 

Forum statistics

Threads
1,078,541
Messages
5,341,061
Members
399,414
Latest member
EMW2159

Some videos you may like

This Week's Hot Topics

  • Problem with Radio Button's format control
    I am creating an employee evaluation template (a sample is below) Column A is the category Column B, C D, E and F will be ratings (unacceptable...
  • Last Display on userform to a Listbox
    [CODE=vba] lstdisplay.ColumnCount = 15 lstdisplay.RowSource = "A1:O600000" [/CODE] So when i do this it Displays everything on the sheet i am...
  • Rename and move files to a new location
    Dear all, I have an excel file with the following information. The actual file name is at column A but i want to rename it using the following...
  • Help with True/False Formula
    Hello! Am stumped how to fix this formula, in which my result returns 'True', but it should return False. =IF(AG2=True...
  • Clear extra characters from a provided range of cells
    Dear All, I have following code which gives me desired output to remove extra characters from a provided range. But it takes too much time when...
  • Help with Current and highest streaks
    Hi there, I've just joined the forum and this is my first post. I've already spent quite a bit of time searching the net and this forum for a...
Top