Excel VBA打开一个文件夹

使用2010 Excel VBA – 我只是想通过一个子打开一个文件夹。 我在这里做错了什么?

VBA

Sub openFolder() Dim preFolder As String, theFolder As String, fullPath as String theFolder = Left(Range("T12").Value, 8) preFolder = Left(Range("T12").Value, 5) & "xxx" fullPath = "P:\Engineering\031 Electronic Job Folders\" & preFolder & "\" & theFolder Shell(theFolder, "P:\Engineering\031 Electronic Job Folders\" & preFolder, vbNormalFocus) End Sub 

如果你想打开一个Windows文件浏览器,你应该调用explorer.exe

 Call Shell("explorer.exe" & " " & "P:\Engineering", vbNormalFocus) 

等效的syxntax

 Shell "explorer.exe" & " " & "P:\Engineering", vbNormalFocus 

我用它来打开工作簿,然后将该工作簿的数据复制到模板。

 Private Sub CommandButton24_Click() Set Template = ActiveWorkbook With Application.FileDialog(msoFileDialogOpen) .InitialFileName = "I:\Group - Finance" ' Yu can select any folder you want .Filters.Clear .Title = "Your Title" If Not .Show Then MsgBox "No file selected.": Exit Sub End If Workbooks.OpenText .SelectedItems(1) 

'以下是将该文件复制到工作簿中的一个新工作表并将这些值粘贴到工作表1中

  Set myfile = ActiveWorkbook ActiveWorkbook.Sheets(1).Copy after:=ThisWorkbook.Sheets(1) myfile.Close Template.Activate ActiveSheet.Cells.Select Selection.Copy Sheets("Sheet1").Select Cells.Select ActiveSheet.Paste End With