XL 2019 Gestion des fichiers et répertoires

  • Initiateur de la discussion Initiateur de la discussion MarcDJ
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

MarcDJ

XLDnaute Junior
Bonjour à tous,

Où pourrais-je trouver de la documentation pour gérer des fichiers et répertoires en VBA Excel 2019.

L'idée est d'aller sur un disque dur, sélectionner un répertoire avec des noms et en fonction des noms télécharger
les 5 photos correspondant au nom.

Merci d'avance pour réponses
 
Bonjour à tous,

Est-ce que la manière suivante de travailler est bonne :
-------------------------------------------------------------------------------------
Sub CreerDossier()

' Créer un Dossier

Dim GestionFichier As New Scripting.FileSystemObject
GestionFichier.CreateFolder "D:\Atelier\Armoire"
Set GestionFichier = Nothing

End Sub
-------------------------------------------------------------------------------------
Je vois dans beaucoup d'exemples que l'on n'emploie plutôt ceci :

Sub CreerDossier()

MkDir ("D:\Atelier\Armoire")

End Sub
--------------------------------------------------------------------------------------
Merci d'avance pour vos réflexions.
 
Bonjour à tous

Oui, Mkdir permet de créer un dossier dans un sous-dossier.

Mais pour créer un dossier avec différents sous-dossiers, tu peux utiliser ce code:

VB:
Private Declare Function SHCreateDirectoryEx Lib "Shell32.dll" Alias "SHCreateDirectoryExA" _
                                             (ByVal hwnd As Long, ByVal pszPath As String, ByVal lngsec As Long) As Long
Sub TestCréationDossier()
Dim Rep As String
    Rep = "C:\repA\repB\repC\RepD"
    nomdossier = Dir(Rep, vbDirectory)
    If nomdossier <> Empty Then MsgBox ("Le dossier existe"): Exit Sub
    CreationDossier Rep
End Sub
Sub CreationDossier(sNomRep As String)
    'ChDrive "D"
    SHCreateDirectoryEx 0&, sNomRep, 0&
End Sub
 
Salut, à tester
VB:
Option Explicit

Sub CreationDossier_Shell()
Dim sdossier As String
Dim sChaine As String
    sdossier = "C:\Essai1\Essai2\Essai3\Essai4\Essai5"
    sChaine = Environ("comspec") & " /c mkdir " & sdossier
    Shell sChaine, 0
End Sub
 
Bonjour à tous,

Est-ce que la manière suivante de travailler est bonne :
-------------------------------------------------------------------------------------
Sub CreerDossier()

' Créer un Dossier

Dim GestionFichier As New Scripting.FileSystemObject
GestionFichier.CreateFolder "D:\Atelier\Armoire"
Set GestionFichier = Nothing

End Sub
-------------------------------------------------------------------------------------
Je vois dans beaucoup d'exemples que l'on n'emploie plutôt ceci :

Sub CreerDossier()

MkDir ("D:\Atelier\Armoire")

End Sub
--------------------------------------------------------------------------------------
Merci d'avance pour vos réflexions.
Re..
La meilleur manière selon moi, est celle que l'on comprend et que l'on maitrise.
Tous arrivent au même résultat.
 
Re, et un de plus de frederic sigonneau
VB:
Private Function CreationDossier(ByVal sChemin As String) As Boolean
Dim i As Integer, sTmp As String, Ar() As String
    If InStr(sChemin, ":") = 0 Then
        Ar = Split(CurDir & "\" & sChemin, "\")
    Else
        Ar = Split(sChemin, "\")
    End If

    sTmp = Ar(0)
    ChDrive sTmp

    For i = LBound(Ar) + 1 To UBound(Ar)
        If Ar(i) <> "" Then
            sTmp = sTmp & "\" & Ar(i)
            On Error Resume Next
            MkDir sTmp
            On Error GoTo 0
        End If
    Next i

    If Dir$(sChemin, vbDirectory) = vbNullString Then
        CreationDossier = False
    Else
        CreationDossier = True
    End If
End Function
 
Bonsoir à tous,

Pourquoi le code suivant me renvoie "objet requis"

Sub AccesRepertoireMesDocuments()

Dim Chemin As String
Chemin = ("C:\Users\MSI Marc\Documents")
' Affichage de l'emplacement Physique du répertoire Mes Documents
MsgBox Chemin
' Affichage du nombre de Sous-Dossiers du répertoire Mes Documents
Dim GestionFichier As New Scripting.FileSystemObject
MsgBox GestionDossier.GetFolder(Chemin).SubFolders.Count
Set GestionFichier = Nothing
' Affichage du Premier Fichier trouvé dans Mes Documents
MsgBox Dir(Chemin & "\*.*")
' Affichage du Dossier Suivant
MsgBox Dir

End Sub

Merci pour vos réponses
 
Bonsoir à tous,

Pourquoi le code suivant me renvoie "objet requis"

Sub AccesRepertoireMesDocuments()

Dim Chemin As String
Chemin = ("C:\Users\MSI Marc\Documents")
' Affichage de l'emplacement Physique du répertoire Mes Documents
MsgBox Chemin
' Affichage du nombre de Sous-Dossiers du répertoire Mes Documents
Dim GestionFichier As New Scripting.FileSystemObject
MsgBox GestionDossier.GetFolder(Chemin).SubFolders.Count
Set GestionFichier = Nothing
' Affichage du Premier Fichier trouvé dans Mes Documents
MsgBox Dir(Chemin & "\*.*")
' Affichage du Dossier Suivant
MsgBox Dir

End Sub

Merci pour vos réponses
Bonjour à tous
Et tout de suite après, modifier
Dim GestionFichier.......
MsgBox GestionDossier.....
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
26
Affichages
1 K
Retour