2013-06-04 2 views
11
Private Sub Command93_Click() 

    Dim f As Object 
    Dim strFile As String 
    Dim strFolder As String 
    Dim varItem As Variant 
    Dim P As String 
    Dim DeleteEverything As String 

     DoCmd.SetWarnings False 
     DeleteEverything = "DELETE * FROM [TABLE]" 
     DoCmd.RunSQL DeleteEverything 

    Set f = Application.FileDialog(3) 
    f.AllowMultiSelect = False 
    If f.Show Then 
     For Each varItem In f.SelectedItems 
      strFile = Dir(varItem) 
      strFolder = Left(varItem, Len(varItem) - Len(strFile)) 
      P = strFolder & strFile 
     Next 
    End If 
    Set f = Nothing 

     DoCmd.TransferText acImportFixed, "[IMPORT SPECIFICATION]", "[TABLE]", P, False 

End Sub 

मेरे सवाल यह है कि एक विशिष्ट फ़ोल्डर में FileDialog डिफ़ॉल्ट बनाने के लिए जब यह शुरू में खुलता है? इस मामलेVBA में FileDialog के लिए एक फ़ोल्डर को डिफ़ॉल्ट रूप से

+0

बाहर की जाँच करें यहाँ प्रदान की कोड: http://stackoverflow.com/questions/9399651/picking-a-folder- उपयोग-आवेदन-दायरियल –

उत्तर

31

में किसी भी मदद के लिए

धन्यवाद InitialFileName को (अनुगामी \ सहित) फ़ोल्डर पथ जोड़ें। उदाहरण के लिए, उपयोगकर्ता के घर निर्देशिका में संवाद खोलने के लिए कार्य करें:

f.InitialFileName = Environ("USERPROFILE") & "\" 

आप भूल जाते हैं \, तो संवाद बॉक्स अभी भी सही फ़ोल्डर, लेकिन फ़ोल्डर नाम में खुलेगा भी रूप में दिखाई देगा अनुगामी हैं डिफ़ॉल्ट चयनित फ़ाइल नाम। फिर संवाद एक ही नाम के साथ उप-फ़ोल्डर की तलाश करेगा, जो आमतौर पर मौजूद नहीं है।

+0

यह एक अच्छी टिप है। मैंने चडीर की कोशिश की और इसका कोई प्रभाव नहीं पड़ा। – FCastro

+0

मुझे लगता है कि '" \ "' '\" के बजाय 'एप्लिकेशन.पैथसेपरेटर' बेहतर होगा –

-1

या, संवाद खोलने से पहले, बस के साथ deault फ़ाइल निर्देशिका बदलें:

Application.Options.DefaultFilePath(wdDocumentsPath) = "your\path\here" 
+1

यह कोड केवल एमएस वर्ड के उपयोग के लिए अच्छा है, ओपी एमएस एक्सेस के बारे में पूछ रहा है –

संबंधित मुद्दे