Bonsoir,
j'ai un gros bug entre la fonction Worksbook.save et Worksbook.Close.
Tout se situe dans une sub qui scanne tous les fichiers d'un dossier. Lorsque je sauve et que je ferme le fichier ouvert et modifié il 'perd le fil' du scan, et scanne en boucle sans arrêt tous les fichiers.
Ca ne le fait pas si je laisse le fichier ouvert sans le fermer, et vis versa.
J'ai testé le code:
Worksbook(fichier).Close savechanges = True
mais ça ne sauve pas le fichier modifié, il le ferme juste.
Je deviens dingue, car c'est INCOMPRÉHENSIBLE!!!!
Je REMERCIE MILLE FOIS la personne qui m'aidera!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Private Sub FichSuivant(ByRef Rep)
Dim FileItem As Object
Dim fichier As String
Dim nom_data As String
Dim typefichier As String
On Error Resume Next
nom_data = ActiveWorkbook.Name
For Each FileItem In Rep.Files
'CODE pour extraire nom fichier+extension d'un path
fichier = Right(FileItem.path, Len(FileItem.path) - InStrRev(FileItem.path, "\", -1, 1))
'FILTRE tout les fichiers non XLSM
typefichier = Right(FileItem.path, Len(FileItem.path) - InStrRev(FileItem.path, ".", -1, 1))
If typefichier <> "xlsm" Then GoTo next_fichier
Workbooks.Open Filename:=FileItem.path
'FILTRE si un onglet a bien le codename "main"
r_existe = False
For o_existe = 1 To Sheets.count
If Sheets(o_existe).CodeName = "recette" Then
r_existe = True
End If
Next
If r_existe = False Then GoTo close_fichier
Workbooks(nom_data).Sheets("data").Cells.Copy Workbooks(fichier).Sheets("data").Range("A1")
Workbooks(fichier).Save
close_fichier:
'Workbooks(fichier).Close
next_fichier:
Next
Set FileItem = Nothing
End Sub