Re : Retablissement des formules
re bonjour JP
je te remercie pour l'intérêt que tu portes à ma question.
Voici le contexte de l'application : un module contenat les classeurs A et B est fournit à une tierce partie. Cette tièrce partie utilise le modele A pour saisir les données qu'elle veut transmettre. B est également un modèle qui crée un Classeur C d'envoi qui m'est transmis par mail. le point commun entre ces 3 classeurs est la feuille F. Sinon chaque classeur a des fonctionnalités différentes.
A=avbf_modele.xls
B=Envoi_modele.xls
C= le nom créé automatiquement du classeur qui va être transmis (variable FL)
F=la feuille "Bordereau de dépôt" qui est concernée par les formules de B uniquement.Ce sont ces formules qui ne sont pas rétablies après la copie dans B.
Voici le code de la copie :
......
response = MsgBox("Vous allez enregistrer votre saisie. Le classeur va être renommé et déplacé dans le dossier SAUGARDE DES ENVOIS.Veuillez confirmer", vbYesNo)
    If response = vbNo Then Exit Sub
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Dim FL As String
    FL = Range("societe") & Range("client") & Format$((Date), "dd_mm_yy") & "_Faux_vers_***.xls"
    Sheets("bordereau de dépôt").Range("z1") = FL
    Fm = "envoi_modele.xls"
    
    Fichier_Maitre = "envois\" & Fm
    
    Dim varChemin As String
    Dim varDestination As String
    Dim varNomFichier As String
    Dim varMessage As String
    
    varNomFichier = ActiveWorkbook.Name
    varChemin = ActiveWorkbook.FullName
    varChemin = Left(varChemin, InStrRev(varChemin, "\"))
    varChemin = Left(Left(varChemin, Len(varChemin) - 1), InStrRev(Left(varChemin, Len(varChemin) - 1), "\"))
       varDestination = varChemin & Fichier_Maitre
  '-----------------------------------------------------------------  
    '1-ouvrir le modele B
    Workbooks.Open Filename:= _
        varDestination
    '2-supprimer la feuille dépot dans B
    Sheets("Bordereau de dépôt").Select
    ActiveWindow.SelectedSheets.Delete
    '3-déplacer la feuille dépot de l'envoi '      A->B sans doute est-là que se pose le problème ?    [/B]    
     Windows("avbf_modele.xls").Activate
    Sheets("Bordereau de dépôt").Unprotect
    Sheets("Bordereau de dépôt").Copy Before:=Workbooks("Envoi_modele.xls"). _
    Sheets(1)
    ActiveSheet.Shapes("b_bas").Delete
    ActiveSheet.Shapes("b_haut").Delete
    ActiveSheet.Shapes("bder").Delete
    Range("B9") = "Bordereau à envoyer à la ****"
    Range("C2") = ""
    With Worksheets("bordereau de dépôt").Buttons
        .Visible = False
    End With
        Sheets(2).Visible = True
        Sheets(3).Visible = True
        Sheets(1).Visible = True
        Sheets(1).Select
  '-----------------------------------------------------------------  
    Fichier_Maitre = "ENVOIS\sauvegarde_envois\" & FL
    varDestination = varChemin & Fichier_Maitre
    
    ' création de C
        ActiveWorkbook.SaveAs Filename:= _
        varDestination _
        , FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
     Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    Application.Quit
    Exit Sub