有没有办法提取工作簿名称,但只提取其中的一部分。 任何版本的excel都不错,最好是2003年。
例如
"Help_TicketID123456788.xls"
"Help_TicketID563565464.xls"
...
那么我想提取ID numbers
并将它们放在另一个工作簿中的主工作表的列中。
此外,我想从每个工作簿中的特定列(始终是相同的列)中提取一些数据,并将其放入主工作表中。
谢谢!
答案 0 :(得分:0)
在主电子表格中,您可以编写一个VBA过程来循环遍历目录中的所有xls文件,从每个文件名中提取ID号,然后打开每个文件以提取其他数据。这应该让你开始:
Sub RunCodeOnAllXLSFiles()
Dim lCount As Long
Dim wbResults As Workbook
Dim wbCodeBook As Workbook
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False
On Error Resume Next
Set wbCodeBook = ThisWorkbook
With Application.FileSearch
.NewSearch
'Change path to suit
.LookIn = "C:\MyDocuments\TestResults"
.FileType = msoFileTypeExcelWorkbooks
'Optional filter with wildcard
.Filename = "Help_TicketID*.xls"
If .Execute > 0 Then 'Workbooks in folder
For lCount = 1 To .FoundFiles.Count 'Loop through all
'Extract ticket #
'.FoundFiles(lCount) is the filename
'Open Workbook x and Set a Workbook variable to it
Set wbResults = Workbooks.Open(Filename:=.FoundFiles(lCount), UpdateLinks:=0)
'Read the data from wbResults and write to your master spreadsheet
wbResults.Close SaveChanges:=False
Next lCount
End If
End With
On Error GoTo 0
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.EnableEvents = True
End Sub