Εμφάνιση ενός μόνο μηνύματος
  #9  
Παλιά 20-03-20, 13:45
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.035
Προεπιλογή

Γεια σας!


Γιάννη σύμφωνα με τον τίτλο του άρθρου σου (Δημιουργία φακέλου και υποφακέλου ταυτόχρονα) θα έλεγα ότι η MkDir θα δημιουργήσει φάκελο μόνο αν υπάρχει ο γονικός φάκελος.

Τι εννοώ:
Έστω ότι έχουμε το φάκελο "C:\Users\Giannis\Desktop\Test\" μέσα στον οποίο θέλουμε να δημιουργήσουμε προγραμματιστικά .\Test1\Test2\Test3 ώστε να έχουμε : "C:\Users\Giannis\Desktop\Test\Test1\Test2\Test3\

Δεν θα λειτουργήσει απ' ευθείας με την MkDir.

Μπορεί να χρησιμοποιηθεί η εξής συνάρτηση API:
Κώδικας:
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long
για να δημιουργηθούν οι φάκελοι .\Test1\Test2\Test3\ αν δεν υπάρχουν ήδη.




Μπορεί κανείς να καλέσει τη συνάρτηση ως εξής:

Κώδικας:
Sub test()
    Dim result As Long
    result = MakeSureDirectoryPathExists("C:\Users\Giannis\Desktop\Test\Test1\Test2\Test3\") 
    ' Προσοχή!! Η τελευταία διαχωριστική κάθετος ( \ ) είναι απαραίτητη.
    If result = 0 Then
        MsgBox "Δεν ήταν δυνατή η δημιουργία φακέλου/ων"
    Else
        ' Ο/οι φάκελοι δημιουργήθηκαν ή υπάρχουν ήδη.
    End If

End Sub
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 20-03-20 στις 17:25.
Απάντηση με παράθεση