On aurait dû lire :
If Dir(LeDossier, vbDirectory) = "" Then
On aurait dû lire :
If Dir(LeDossier, vbDirectory) = "" Then
On aurait dû lire :
If Dir(LeDossier, vbDirectory) = "" Then
Bonjour à tous,
Comment tester en vba si un dossier est vide ?
Vide de sous-dossiers et vide de fichiers...
Merci de votre aide à tous
Alf
Bonjour à tous,
Comment tester en vba si un dossier est vide ?
Vide de sous-dossiers et vide de fichiers...
Merci de votre aide à tous
Alf
Bonjour à tous,
Comment tester en vba si un dossier est vide ?
Vide de sous-dossiers et vide de fichiers...
Merci de votre aide à tous
Alf
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire de
ton test
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire de
ton test
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire de
ton test
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire
de ton test
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire
de ton test
Est-ce possible que tu aies un ou des fichiers cachés dans le répertoire
de ton test
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime". Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime". Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime". Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime".
Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste
déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il
se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime".
Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste
déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il
se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD
Si tu exécutes la procédure pas à pas, après exécution de la ligne de code
suivante :
Set Dossier = FSO.GetFolder(Répertoire)
En passant la souris au-dessus de dossier, tu devrais voir le chemin du
répertoire
Pour les 2 lignes de code suivantes, le résultat est donné par les
propriétés et méthodes de la bibliothèque "Microsoft Scripting Runtime".
Si
tu retapes le "point" (.) après "Dossier, tu as droit à une liste
déroulante
qui affiche les propriétés et méthodes de l'objet. Tu peux faire la même
chose pour le point de chacun des items de ces 2 lignes de code.
'Nombre de sous-répertoires
NDossiers = Dossier.SubFolders.Count
'Nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
à la procédure suivante, j'ai apporté une légère modification dans la
déclaration de la variable "Dossier" comme suit : Dossier As
Scripting.Folder. Selon les bibliothèques définies dans ton classeur, il
se
peut que l'expression "Folder" appartienne a plus d'une bibliothèque. En
précisant dans la déclaration "Scripting.Folder", on va s'assurer qu'Excel
comprend bien que l'on parle de l'objet "Folder" appartenant à cette
bibliothèque.
Chez moi, avec Excel 2016, je fais mouche à chaque fois. Tu as quelle
version d'Excel?
'-------------------------------------------------
Sub test()
Dim FSO As Scripting.FileSystemObject
Dim NDossiers As Long, Dossier As Scripting.Folder
Dim NFiles As Long
Dim Répertoire As String
Répertoire = "E:Denistoto"
If Dir(Répertoire, vbDirectory) = "" Then
MsgBox "Ce répertoire """ & Répertoire & """ n'existe pas."
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(Répertoire)
'NDossiers = Nombre de sous-répertoires dans
'le répertoire dossier
NDossiers = Dossier.SubFolders.Count
'NFichiers = nombre de fichiers dans le répertoire dossier
NFichiers = Dossier.Files.Count
MsgBox "Ce répertoire """ & Répertoire & """ a " & _
NDossiers & " répertoire(s)" & " et " & _
NFichiers & " fichiers."
'OU
If NDossiers = 0 And NFichiers = 0 Then
MsgBox "Ce répertoire """ & Répertoire & """ est vide."
End If
End Sub
'-------------------------------------------------
MichD