2013-07-02 9 views
8

2010 एक्सेल वीबीए का उपयोग करना - मैं बस उप के माध्यम से एक फ़ोल्डर खोलने की कोशिश कर रहा हूं। मुझसे यहां क्या गलत हो रहा है?एक्सेल वीबीए एक फ़ोल्डर खोलें

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 
+1

क्या आप फ़ोल्डर के साथ क्या करना चाहते हैं एक बार आप इसे खोल दिया है कर ? – Bathsheba

+0

शैल केवल दो तर्क लेता है। जैसा कि बताया गया है कि यह वास्तविक नहीं है कि आप क्या कर रहे हैं – JosieP

+0

मैं चाहता हूं कि उपयोगकर्ता एक बटन पर क्लिक करने में सक्षम हो और फ़ोल्डर स्क्रीन पर खुलता है - और कुछ नहीं। – Sanya

उत्तर

19

आप एक Windows फ़ाइल एक्स्प्लोरर खोलना चाहते हैं, तो आप explorer.exe

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

समतुल्य syxntax

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

यह कहता है कि इस लाइन – Sanya

+0

@ डी-स्ट्राइयर पर एक वाक्यविन्यास त्रुटि है, आप करीब हैं। लाइन 'shell' explorer.exe/e, z: \ MyPath \ To \ Folder "' – SeanC

+0

जैसी कुछ दिखाई देगी, मुझे लगता है कि यदि इसमें कोई स्थान हो तो आपको उद्धरण में पथ डालना होगा। –

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