Nettoyage d'un répertoire

Bonsoir le forum!!

je chercher un code pour supprimer des dossiers vides dans un répertoire

chemin du répertoire "C:\Users\Slijack\Desktop\Pact\Amelioration\ES"

merci d'avance pour l'aide que vous pourriez m'apporter

Salut,

Ca devrait jouer avec ce code

Option Explicit
Sub Nettoyage_d_un_dossier()
' Supprime tous les fichiers Excel vides du dossier défini ci-dessous

Dim Fichier_traité As String, k As Integer, i As Long, j As Integer
Application.ScreenUpdating = False

Const chemin = "C:\Users\Slijack\Desktop\Pact\Amelioration\ES\"
Fichier_traité = Dir(chemin & "*.xls")
Do While Fichier_traité <> ""
Workbooks.Open chemin & Fichier_traité
    j = 0
    For k = 1 To Sheets.Count
        Sheets(k).Activate
        i = WorksheetFunction.CountA(Cells)
        If i > 0 Then j = j + 1
     Next
     Workbooks(Fichier_traité).Close False
     If j = 0 Then Kill "C:\Users\Slijack\Desktop\Pact\Amelioration\ES\" & Fichier_traité
Fichier_traité = Dir
Loop
End Sub

Attention : Les fichiers ainsi supprimés le sont définitivement. De plus, si tu places ce code dans un fichier absolument vide et que tu places ce fichier dans le dossier défini dans la macro, ça peut supprimer ce fichier lui-même.

EDIT : Aie ! En relisant ta question, je me rends compte que je l'avais mal comprise. Mon code supprime les fichiers vides d'un dossier et non pas les dossiers vides d'un répertoire. Je pense qu'il ne s'agit que d'une simple adaptation, mais je ne sais pas si je saurai le faire. Je vais en tout cas essayer.

Edit bis : Salut Papou, oui effectivement. Je préparais d'ailleurs mon édit ci-dessus pendant que tu plaçais ton message

Bonjour Yvouille slijack le forum

Yvouille il voulait supprimer les dossiers vide pas les fichiers vide, enfin c'est ce que j'ai compris

a+

Papou

Bonjour le forum

Merci pour la tentative d'aide, je vais continuer à faire des recherches sur le net.

dois-je marquer le post comme résolut ou le laisser telquel.

bonne journée à tous

Re slijack le forum

bon alors comme j'avais bien compris je vais te le faire

a+

papou

ReBonjour le forum!!

j'ai résolu mon problème je joins un fichier test pour ceux que cela intéresse

22slijack-v1.xlsm (25.42 Ko)

bonsoir le forum

je reviens sur le sujet car je me suis avancer un peu vite en prétendant que cela fonctionnait.

je peut créer des fichiers dans des sous dossiers les transférés dans un autre et effacer ce qui doit l’être.

Le problème est que si j'ouvre un fichier enregistrer et que je veux le changer de sous dossier

j'ai une erreur d’exécution 70 permission refusée.

Ceci dépasse de loin la petite compréhension que j'ai du VBA.

Alors si quelqu'un peu m'aider je l'en remercie d'avance, je rejoins mon fichier test

17slijack-v1.xlsm (25.85 Ko)

re Bonjour Slijack le forum

Bon alors en modifiant la macro au hasard cela ne marche pas c'est normal

voilà qui devrait être mieux

a+

papou

14slijack-v5.xlsm (23.78 Ko)

Re bonjour Slijack le forum

bon alors je viens de regarder de plus prêt ton fichier c'est quoi ta liste sousdossierA qui fait référence à une seule cellule, et de plus , une cellule VIDE ?????

Si tu nous expliquais en détail ce que tu souhaites obtenir car manifestement, tu ne fais rien de ce qu'il faut!!!!

Une liste SousDossierA alors que SousdossierA est une variable string non utilisée???

Une référence à la cellule Q10 , alors qu'elle est Vide ????

En bref ????? tu veux faire quoi?? faire en sorte de n'avoir qu'un seul fichier dans un dossier??? ou alors ???

Enfin donc des explications claires et on va pouvoir t'aider, mais sans cela pas simple de comprendre

a+

papou

bonsoir Papou et le forum!!!

milles excuse pour ma demande un peu brouillon. je vais essayer de me rattraper.

je voudrais pouvoir enregistre un fichier

1 - Avec un chemin fixe "adresse en h4 sur le tableur

2 - Dans un dossier qui changera de nom chaque année "adresse en h6 sur le tableur

3 - Dans un sous dossier qui a trois signification " en attente, sans suite ou secteur d'activité" "adresse en h8 sur le tableur

4 - Dans un sous dossier de même niveau mais dont on ne connait pas le nom qui sera le nom du client ""adresse en h10 sur le tableur avec un report sur la cellule q10 pour ajouter le "\" mais ceci est provisoire.

ma demande porte sur :

une fois le fichier "Toto" enregistré dans le sous dossier "en attente" je voudrais pourvoir l'ouvrir est l'enregistré dans un autre sous dossier et efface celui du sous dossier source; Mais comme le fichier est actif je me heurte à un problème qui dépase mes connaissance est cela de très loin. je joins un fichier sans erreur ce coup ci.

je vous remercie d'avance en m'excusant de vous avoir fait perdre votre temps

17slijack-v1.xlsm (28.07 Ko)

bonsoir le forum !!!

j'ai une solution pas entièrement satisfaisante mais qui fonctionne.

Merci pour les pistes cela m'a bien aidé, je joins un ficher exemple

17slijack-v1.xlsm (28.07 Ko)
Rechercher des sujets similaires à "nettoyage repertoire"