Bonjour Michel et le forum,
Je viens de terminer d'adapter ta solution pour mon cas. Ton idee etait parfaitement ce que j'attendais. J'ai modifier la condition pour la sauvegarde a une date X.
Mon classeur référence est LaunchDownload.
Mon test s'effectue sur le mois en cours. Si le mois en cours est impair et que cela fait deux mois qu'il n'y a pas eu de changement de nom de fichier (voir Else) alors il cree un nouveau worbook avec comme extension de nom le mois et l'annee en cours et il rajoute dans le classeur LaunchDownload l'adresse complete.
Maintenant il va falloir que je simplifie mon code et que je l'inclus dans mon prog principal.
Je te remercie pour ta solution qui devrait marcher dans tous les cas.
Bonne journee et au plaisir de "s'echanger" (vu ton niveau, je ne suis pas sur d'etre d'une grande aide) des infos.
Romain
Private Sub Workbook_Open()
Dim Name As String
Dim Chemin As String
Dim Chemin2 As String
Dim MyMonth
Dim MyYear
Chemin = "C:\RS\WaveData\Downloading\LaunchDownload.xls"
If Not DejaOuvert(Chemin) Then Workbooks.Open Chemin
Set Wbk = Workbooks(Dir$(Chemin))
Workbooks("LaunchDownload.xls").Activate
Sheets("sheet1").Select
Cells(1, 1) = month(Date)
Cells(2, 1) = Year(Date)
If Not (Cells(1, 1).Value Mod 2 = 1 And Cells(3, 1).Value <> Cells(1, 1).Value) Then
Chemin2 = Range("a1").End(xlDown).Value
If Not DejaOuvert(Chemin2) Then Workbooks.Open Chemin2
Set Wbk = Workbooks(Dir$(Chemin2))
Workbooks(Dir$(Chemin2)).Activate
Call YY
Else
Range("a3").Value = Range("a1").Value
Name = "MKbuoys_" & Cells(1, 1).Value & "_" & Cells(2, 1).Value
Chemin2 = "C:\RS\WaveData\Downloading\" + Name + ".xls"
Range("a1").End(xlDown).Offset(1, 0).Value = Chemin2
Workbooks.Add.SaveAs Chemin2
Workbooks(Dir$(Chemin2)).Activate
Call YY
End If
End Sub
Function DejaOuvert(CheminComplet$) As Boolean
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(CheminComplet))
DejaOuvert = Err = 0
Err.Clear
End Function