2

我编写的代码可以将文件名显示到工作表中,但我想在显示时删除扩展名。我知道这应该是一个小的修正,但我烧毁了尝试的选择。有人可以告诉我我必须在哪里添加一段我想念的代码吗?我在下面的代码尝试。网上很多类似的问题,但我找不到它。提前谢谢....

Option Explicit
Sub fileNames_in_folder()
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Dim fldpath
Dim fld As Object, fil As Object, fso As Object, j As Long
 fldpath = "C:\"
   On Error Resume Next
Thisworkbook.Sheets("1").Activate
'start count row
    j = 11
Set fso = CreateObject("scripting.filesystemobject")
Set fld = fso.getfolder(fldpath)
    For Each fil In fld.Files
'here I have to add something due to expell the ".extension" 
Cells(j, 34).Value = fso.GetBaseName(fil.path)
'count behaviour
    j = j + 1
  Next
Columns("AH").AutoFit
End Sub
4

2 回答 2

9

您可以使用GetBaseName 方法获得不带扩展名的文件名:

Cells(j, 34).Value = fso.GetBaseName(fil.path)
于 2013-05-26T21:14:35.677 回答
0
If InStrRev(fil.Path, ".") <> 0 Then
   Cells(j, 34).Value = Left(fil.Path, InStrRev(fil.Path, ".") - 1)
End If

假设存在“。” 在文件名中。
即 C:\Test.txt 将显示为 C:\Test

于 2013-05-26T21:16:37.047 回答