Excel VBA打开文件夹

时间:2013-07-02 13:18:58

标签: excel vba excel-vba directory excel-2010

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

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

2 个答案:

答案 0 :(得分:25)

如果要打开Windows文件资源管理器,则应调用explorer.exe

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

等效syxntax

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

答案 1 :(得分:0)

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

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