Bonjour Scoy,
Ben là, j'avoue que je ne comprends pas ta question Lol....
Je reprends :
A l'ouverture du classeur, tu souhaites le renommer en le sauvegardant sur le disque avec un nouveau nom et en supprimant la version précédente... Jusque là, pas de problème.
Maintenant, tu me dis que tu souhaiterais récupérer la valeur d'une cellule (G18) de la feuille "y" du fichier précédent.... avant l'effacement de l'ancien fichier !
Mais (sauf erreur de compréhension de ma part), au moment où se termine ta procédure Workbook_Open(), la feuille "y" et la cellule (G18) sont encore là !
Même si le fichier vient de changer de nom, à ce moment là, aucune modification n'a encore été effectuée dans le classeur !
Bon... si tu tiens absolument à récupérer la valeur en G18 de la feuille "y" sur l'ancienne version du fichier avant sa destruction :
Private Sub Workbook_Open()
Dim AncFichier As String
Dim Fichier As String
Dim V as Variant
'Mémorise la valeur de la cellule cible
V = ThisWorkbook.Sheets("y").range("G18").value
'Mémorise le nom d'origine du fichier ouvert
AncFichier = ThisWorkbook.FullName
'Détermine le nouveau nom
Fichier = ThisWorkbook.Path & "\" & "X " & Format(Date, "d mmmm yyyy") & ".xls"
'Si le nom a changé (=> si la date a changé depuis la dernière ouverture)
If Fichier <> AncFichier Then
ThisWorkbook.SaveAs Filename:=Fichier
'Détruit la version précédente
Kill AncFichier
'Affiche la valeur mémorisée
MsgBox "La valeur G18 de la feuille ""y"" était : " & V
End If
End Sub
Cordialement,
Didier_mDF