A voir également:
- Supprimer ancien file auto incrémenté Excel
- Liste déroulante excel - Guide
- Supprimer une page word - Guide
- Supprimer compte instagram - Guide
- Host file - Guide
- Si et excel - Guide
7 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
7 janv. 2008 à 23:38
7 janv. 2008 à 23:38
bonjour
avec Dir("ton_répertoire\Fichier V*.xls") et une boucle avec Dir jusqu'à un nom vide tu obtiens les fichiers présents.
ensuite avec kill chemin de fichier tu supprimes l'excédent.
avec Dir("ton_répertoire\Fichier V*.xls") et une boucle avec Dir jusqu'à un nom vide tu obtiens les fichiers présents.
ensuite avec kill chemin de fichier tu supprimes l'excédent.
Bonsoir,
Merci pour l'info, je vais essayer de bidouiller quelque chose dans ce style, après avoir cherché un peu plus d'info sur ces commandes Dir et la boucle à rédiger.
Comme tu peux le deviner, j'ai souvent plagié des brides de commandes pour en arriver là.
Si tu peux m'aider un peu plus en développant ton idée merci beaucoup.
Grand merci.
Merci pour l'info, je vais essayer de bidouiller quelque chose dans ce style, après avoir cherché un peu plus d'info sur ces commandes Dir et la boucle à rédiger.
Comme tu peux le deviner, j'ai souvent plagié des brides de commandes pour en arriver là.
Si tu peux m'aider un peu plus en développant ton idée merci beaucoup.
Grand merci.
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
8 janv. 2008 à 23:20
8 janv. 2008 à 23:20
bonjour
Tu dois avoir à peu près la procédure avec ceci :
à toi de voir le test à faire pour garder le bon fichier.
Tu dois avoir à peu près la procédure avec ceci :
Dim rep As String Dim fich As String rep = "c:\ton_répertoire\" ' chemin répertoire fich = Dir(rep & "Fichier V*.xls") ' Extrait la première entrée. Do While fich <> "" ' Commence la boucle. If Right(fich, 6) <> "xx.xls" Then Kill rep & fich ' suppression des fichiers End If fich = Dir ' Extrait l'entrée suivante. Loop
à toi de voir le test à faire pour garder le bon fichier.
Bonjour,
C'est vraiment super sympa, je me met au travail et vous informerez de l'avancement.
Encore merci.
C'est vraiment super sympa, je me met au travail et vous informerez de l'avancement.
Encore merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir,
Comme convenu, quelques nouvelles.
Les commandes répondent bien à mes attentes, le seul pb sur lequel je pietine depuis, c'est qu'il plante par ce qu'il essaye de supprimer le fichier sur lequel la macro s'excute elle même.
Je pense qu'il faut exclure ne fichier actif
j'ai essayé : If Right(fich, 6) <> ActiveWorkbook
Mais chou blanc.
Help please .
Comme convenu, quelques nouvelles.
Les commandes répondent bien à mes attentes, le seul pb sur lequel je pietine depuis, c'est qu'il plante par ce qu'il essaye de supprimer le fichier sur lequel la macro s'excute elle même.
Je pense qu'il faut exclure ne fichier actif
j'ai essayé : If Right(fich, 6) <> ActiveWorkbook
Mais chou blanc.
Help please .
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
10 janv. 2008 à 21:52
10 janv. 2008 à 21:52
bonjour
Je pense qu'il faut exclure ne fichier actif
effectivement le suicide n'est pas autorisé car le classeur est bloqué à l'ouverture. Pour comparer
Je pense qu'il faut exclure ne fichier actif
effectivement le suicide n'est pas autorisé car le classeur est bloqué à l'ouverture. Pour comparer
If fich <> ActiveWorkbook.Name
J'avais trouvé ça entre temps et ça marche.
ActiveWorkbookName = Name
Dim rep As String
Dim fich As String
rep = "R:\Photo\Arret équipements Planning\" ' chemin répertoire
fich = Dir(rep & "Planning W* V*.xls") ' Extrait la première entrée.
Do While fich <> "" ' Commence la boucle.
If fich <> Name And Right(fich, 6) <> "V" & Range("BF1") & ".xls" Then
Kill rep & fich ' suppression des fichiers
End If
fich = Dir ' Extrait l'entrée suivante.
Loop
End Sub
merci quand même, cependant dans la suite de mon prog, j'ai encore un accroc,
je souhaite incrémenter de 1 une cellule "BF1", le pb c'est que la cellule s'incrémente jusqu'a 224 d'un seul coup
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
n = 1
Range("BF1") = Range("BF1") + n
End Sub
Encore merci d'avance
ActiveWorkbookName = Name
Dim rep As String
Dim fich As String
rep = "R:\Photo\Arret équipements Planning\" ' chemin répertoire
fich = Dir(rep & "Planning W* V*.xls") ' Extrait la première entrée.
Do While fich <> "" ' Commence la boucle.
If fich <> Name And Right(fich, 6) <> "V" & Range("BF1") & ".xls" Then
Kill rep & fich ' suppression des fichiers
End If
fich = Dir ' Extrait l'entrée suivante.
Loop
End Sub
merci quand même, cependant dans la suite de mon prog, j'ai encore un accroc,
je souhaite incrémenter de 1 une cellule "BF1", le pb c'est que la cellule s'incrémente jusqu'a 224 d'un seul coup
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
n = 1
Range("BF1") = Range("BF1") + n
End Sub
Encore merci d'avance