Commande pour fermer un fichier dont le commence par "toto"

bonjour,

1 - j'ai des fichiers générés automatiquement dans un répertoire dédié. Ils commencent tous par le même nom "toto", le reste du nom étant horodaté, avec extension.csv.

2- je traite ces fichiers sur excel dans un autre répertoire nommé traitement.xlsm (import et conversion des données)

3 - ma macro me permet d'ouvrir le répertoire dans lequel sont enregistrées les toto.csv, je récupère les données afin de les traiter

JUSQUE LA MA MACRO FONCTIONNE....

4- je me retrouve avec 2 fichiers ouverts traitements.xlsm et toto.csv.

5- je souhaiterais une fois l'import de données réalisé, que le fichier toto.csv se ferme.

LA OU JE BUTE :

le nom de fichier toto.csv étant horodaté , je ne peux le nommé explicitement dans la macro : comment faire / transcrire la commande suivante :

parmi les fichiers ouverts, si le nom contient toto, le fermer sans enregistrer?

Je bute sur la transcription du code.

Merci d'avance

Bonjour floBER, bonjour le forum,

Peut-être avec :

Dim CL As WorkBook
For Each CL in WorkBooks
     If Left(CL.Name, 4) = "toto"  then

ou :

Dim CL As WorkBook
For Each CL in WorkBooks
     If Right(CL.Name, 4) = ".csv"  then

merci beaucoup thau thème : ça fonctionne parfaitement !

Bon WE

Bonjour

Pour fermer le second classeur, autre que le classeur actif et quelle que soit son extension

Dim WB As String
If Workbooks.Count = 2 Then
For i = 1 To 2
If Not Workbooks(i).Name = ThisWorkbook.Name Then WB = Workbooks(i).Name
Next i
End If
Workbooks(WB).Close SaveChanges:=False
End Sub

Cordialement

Merci Amadéus pour cette variante

Bon WE

Rechercher des sujets similaires à "commande fermer fichier commence toto"