I am storing filenames from a folder into an array. I am then attempting to remove the ".xlsx" part of the string from the filenames, and print them to a spreadsheet.
I am having difficulties removing the ".xlsx" substring from each array element. I am led to believe that the Replace function is the best for this, but haven't been successfull yet. The area of confusion is indicated by the 'HERE comment
Sub Example()
Dim FName As String
'Array to store filenames.
Dim arNames() As String
Dim myCount As Integer
Dim i As Integer
FName = Dir("G:\ExampleFolder\*.xls*")
' Run until there are no more filenames.
Do Until FName = ""
'Increment
myCount = myCount + 1
'Actively store filenames into an array.
ReDim Preserve arNames(1 To myCount)
arNames(myCount) = FName
FName = Dir
Loop
'Print array details to sheet.
For i = LBound(arNames) To UBound(arNames)
Next i
'Create a random excel sheet to print the file names.
Set o = CreateObject("excel.application")
' Activate new excel spreadsheet.
o.Visible = True
o.Workbooks.Add
'Edit string in array.
'HERE
Dim LResult As String
'LResult = Replace(arNames, ".xlsx", "")
o.sheets("sheet1").Range("A1:" & ConvertToLetter(i) & "1").Value = arNames
End Sub
Function ConvertToLetter(iCol As Integer) As String
Dim iAlpha As Integer
Dim iRemainder As Integer
iAlpha = Int(iCol / 27)
iRemainder = iCol - (iAlpha * 26)
If iAlpha > 0 Then
ConvertToLetter = Chr(iAlpha + 64)
End If
If iRemainder > 0 Then
ConvertToLetter = ConvertToLetter & Chr(iRemainder + 64)
End If
End Function