amelioré un code de supression de fichier image

SSIAP2

XLDnaute Occasionnel
Bonjour à tous actuelement j'utilise ce code pour suprimé un fichier image dans un dossier precis

Code:
Kill ThisWorkbook.Path & "\Diplome\" & Combodiplo & "\" & ComboNom & ".jpg"

*Combodiplo etant la valeur de mon dossier et combonom la valeur du nom

dans mon dossier nomé Diplome j'ai des sous dossier FORMATION1 FORMATION2 FORMATION3 jusqu'a FORMATION77 et y en à d'autre qui vont venir

je recherche une solution pour que si j'appuis sur suprimée tous les images présent dans les dossier commençant par FORMATION et portant le nom présent dans la valeur de ma ComboNom soit effacer.



Ex LULU

tous les image portant le nom de LULU dans tous les dossiers formation... suprimée

pouvez vous m'aider la dessus svp merci.
 

cpeens

XLDnaute Occasionnel
Re : amelioré un code de supression de fichier image

Bonjour kjin

alors plus à rien puisqu'il me sert à suprimé 1 diplome d'un sous dossier specifique

mais ce que je recherche par ce bias c'est de suprimés tous les diplome qui porte le nom present dans ma conboNom


mais dans tous les sous dossiers commençant par FORMATION.

dsl je t'ai répondu avec le pseudo de mon travail
 

Efgé

XLDnaute Barbatruc
Re : amelioré un code de supression de fichier image

Bonjour SSIAP2 /cpeens, Staple, kjin,
Une proposition avec ce que j'ai compris et d'après un code de CBernardT :
Code:
[COLOR=blue]Sub[/COLOR] Supprime_images()
[COLOR=blue]Dim[/COLOR] FSO [COLOR=blue]As Variant[/COLOR], Rep [COLOR=blue]As Object[/COLOR], dossier [COLOR=blue]As Object[/COLOR], fichier [COLOR=blue]As Object[/COLOR], Chemin [COLOR=blue]As String[/COLOR], RepertoireActuel [COLOR=blue]As String[/COLOR]
Application.ScreenUpdating = [COLOR=blue]False[/COLOR]
Chemin = ThisWorkbook.Path & "\Diplome\"
[COLOR=green]' Définition du répertoire du classeur CompteurBO[/COLOR]
RepertoireActuel = Chemin
[COLOR=green]'Attribue une référence d'objet à la variable[/COLOR]
[COLOR=blue]Set[/COLOR] FSO = CreateObject("Scripting.FileSystemObject")
[COLOR=green]'Boucle sur les sous-répertoires du répertoire choisi[/COLOR]
    [COLOR=blue]For Each[/COLOR] Rep [COLOR=blue]In[/COLOR] FSO.GetFolder(RepertoireActuel).SubFolders
        SousRep = Rep.Name
       [COLOR=green]'Boucle sur les fichiers des sous-répertoires[/COLOR]
        [COLOR=blue]Set[/COLOR] dossier = CreateObject("Scripting.FileSystemObject").GetFolder(RepertoireActuel & "/" & SousRep)
            [COLOR=blue]For Each[/COLOR] fichier [COLOR=blue]In[/COLOR] dossier.Files
                [COLOR=blue]If[/COLOR] fichier.Name = combonom & ".jpg" [COLOR=blue]Then[/COLOR] Kill fichier
            [COLOR=blue]Next[/COLOR] fichier
    [COLOR=blue]Next[/COLOR] Rep
Application.ScreenUpdating = [COLOR=blue]False[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 

SSIAP2

XLDnaute Occasionnel
Re : amelioré un code de supression de fichier image

bonjour efgé et merci pour ton aide j'ai essayer ton code mais il me suprime pas tous les diplomes

je refais un petit topos sur ce que je souhaiterais

quand je clique sur le bouton supprimer

*Tous les images portant comme nom la valeur de ma comboNom présent dans les sous dossier FORMATION

soit suprimer

exemple dans ma comboNom la valeur est LULU
en cliquant sur le bouton suprimer les images portant comme nom LULU dans les sous dossier FORMATION1 ; FORMATION2 FORMATION3 ;.......ect soit suprimer

j'ai mis un exemple en Pj pour vous voyer un peu comment c'est fais.

merci d'avance pour le temps deja passer à m'aider
 

Pièces jointes

  • Test.zip
    35.4 KB · Affichages: 31
  • Test.zip
    35.4 KB · Affichages: 31
  • Test.zip
    35.4 KB · Affichages: 29

kjin

XLDnaute Barbatruc
Re : amelioré un code de supression de fichier image

Bonsoir,
Code:
Sub Supprime_images()
Dim pfld As String, fs As Object, fld As Object, f As Object
pfld = ActiveWorkbook.Path & "\Diplome\"
Set fs = CreateObject("Scripting.FileSystemObject")
For Each fld In fs.GetFolder(pfld).SubFolders
    If UCase(fld.Name) Like "FORMATION*" Then
        For Each f In fld.Files
            If UCase(f.Name) Like UCase(ComboNom) & "*" Then fs.DeleteFile f.Path
        Next
    End If
Next
End Sub
Attention, supprime tous les fichiers commençant par lulu, comme on ne sait toujours pas ce que contient précisemment ComboNom; peut-être saura t-on un jour...
A+
kjin
 

Staple1600

XLDnaute Barbatruc
Re : amelioré un code de supression de fichier image

Bonjour à tous

SSIAP2, cpeens et aussi CCIV

Cela frise la personnalité multiple :D

ont est un mais j'ai 2 pseudo un pour le travail et l'autre perso
comme j'ai dis plus haut
Je ne vois pas ou tu as dis cela ?

EDITION:bonsoir kjin, merci d'avoir retrouver mes lunettes
Mais le plus haut de SSIAP2, chez moi , c'est plus bas
 
Dernière édition:

SSIAP2

XLDnaute Occasionnel
Re : amelioré un code de supression de fichier image

RE bonsoir à tous je remercie kjin ta solution fonctionne parfaitement.

PS:Staple1600 tu semblais préoccupée par mes 2 pseudos j'espère que sa t'a pas empêcher dormir car mon but je t'assure n'était pas de te troubler :(

enfin maintenant tu sais SSIAP2 et Cpeens c'est le même personnage en revanche cciv est le nom du PC ou je travail.

si tu à d'autre question hésite pas je me ferais un plaisir d'assouvir ta curiosité faut bien s'aider dans la vie à bientôt :D:D
 

Discussions similaires

Statistiques des forums

Discussions
312 282
Messages
2 086 760
Membres
103 389
dernier inscrit
DEDE86