Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb d écriture VBA

3 réponses
Avatar
Pierre-Henri
Bonsoir à toutes et à tous !
J'ai dans un dossier "TOTO" des fichiers.
Je voudrai écrire en VBA, pour chaque fichier dans le dossier "TOTO",
supprimer si le nom contient "tutu"

For each Files in "TOTO"
if F Like ("*" & "tutu" & "*") Then
?????"supprimer ces fichiers"
Next

Mille merci
PH

3 réponses

Avatar
isabelle
bonjour PH,

Kill F

isabelle

Le 2010-04-12 17:10, Pierre-Henri a écrit :
Bonsoir à toutes et à tous !
J'ai dans un dossier "TOTO" des fichiers.
Je voudrai écrire en VBA, pour chaque fichier dans le dossier "TOTO",
supprimer si le nom contient "tutu"

For each Files in "TOTO"
if F Like ("*" & "tutu" & "*") Then
?????"supprimer ces fichiers"
Next

Mille merci
PH
Avatar
michdenis
Bonjour,

Dans un module standard :
'------------------------------------
Sub test()
' 1 - Premier paramètre : Chemin dudit répertoire
' 2 - Deuxième paramètre : Chaîne de caractères recherchés
' dans le nom du fichier.
Call Supprimer_Fichier("c:usersDmDocuments", "tutu")

End Sub

'------------------------------------
Sub Supprimer_Fichier(Repertoire As String, SearchString As String)
Dim ObjFso As Object, Rep As Object, F as Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set Rep = objFSO.GetFolder(Repertoire)
For Each f In Rep.Files
If InStr(1, f.Name, SearchString, vbTextCompare) > 0 Then
f.Delete
End If
Next
Set objFSO = Nothing: Set Rep = Nothing: Set f = Nothing
End Sub
'------------------------------------

Une autre façon de faire :
Cette procédure supprimer tous les fichiers peu importe leur extension
si leur nom comporte l'expression "tutu". Tu peux jouer avec les
wildcards "*" et "?" pour créer l'expression recherchée dans le nom
du fichier.

'------------------------------------------
Sub test1()
Dim Répertoire As String, Fichier As String
Dim ExpressionRecherchée
ExpressionRecherchée = "tutu"
Répertoire = "c:usersDmDocuments"
Fichier = Dir(Répertoire & "*" & ExpressionRecherchée & "*")
Do While Fichier <> ""
x = Fichier
Kill Répertoire & fichier
Fichier = Dir()
Loop
End Sub
'------------------------------------------






"Pierre-Henri" <"PH Neutre"> a écrit dans le message de groupe de discussion :

Bonsoir à toutes et à tous !
J'ai dans un dossier "TOTO" des fichiers.
Je voudrai écrire en VBA, pour chaque fichier dans le dossier "TOTO",
supprimer si le nom contient "tutu"

For each Files in "TOTO"
if F Like ("*" & "tutu" & "*") Then
?????"supprimer ces fichiers"
Next

Mille merci
PH
Avatar
Pierre-Henri
Bonjour,
Merci à Isabelle et Michdenis
Tout est OK !
PH Neutre

michdenis a écrit :
Bonjour,

Dans un module standard :
'------------------------------------
Sub test()
' 1 - Premier paramètre : Chemin dudit répertoire
' 2 - Deuxième paramètre : Chaîne de caractères recherchés
' dans le nom du fichier.
Call Supprimer_Fichier("c:usersDmDocuments", "tutu")

End Sub

'------------------------------------
Sub Supprimer_Fichier(Repertoire As String, SearchString As String)
Dim ObjFso As Object, Rep As Object, F as Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set Rep = objFSO.GetFolder(Repertoire)
For Each f In Rep.Files
If InStr(1, f.Name, SearchString, vbTextCompare) > 0 Then
f.Delete
End If
Next
Set objFSO = Nothing: Set Rep = Nothing: Set f = Nothing
End Sub
'------------------------------------

Une autre façon de faire :
Cette procédure supprimer tous les fichiers peu importe leur extension
si leur nom comporte l'expression "tutu". Tu peux jouer avec les
wildcards "*" et "?" pour créer l'expression recherchée dans le nom
du fichier.

'------------------------------------------
Sub test1()
Dim Répertoire As String, Fichier As String
Dim ExpressionRecherchée
ExpressionRecherchée = "tutu"
Répertoire = "c:usersDmDocuments"
Fichier = Dir(Répertoire & "*" & ExpressionRecherchée & "*")
Do While Fichier <> ""
x = Fichier
Kill Répertoire & fichier
Fichier = Dir()
Loop
End Sub
'------------------------------------------






"Pierre-Henri" <"PH Neutre"> a écrit dans le message de groupe de discussion :

Bonsoir à toutes et à tous !
J'ai dans un dossier "TOTO" des fichiers.
Je voudrai écrire en VBA, pour chaque fichier dans le dossier "TOTO",
supprimer si le nom contient "tutu"

For each Files in "TOTO"
if F Like ("*" & "tutu" & "*") Then
?????"supprimer ces fichiers"
Next

Mille merci
PH