Cloner une feuille Excel

st.tex Messages postés 1 Statut Membre -  
via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous.

Je cherche à cloner une feuille Excel de façon à ce que si je modifie une cellule sur l'une, la modification soit reportée automatiquement dans la cellule de l'autre feuille. Est-ce possible sans avoir à paramétrer les cellules une à une?
D'avance merci

1 réponse

  1. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir st.tex

    Possible par macro

    1) S'il s'agit juste de reporter la modification de la valeur de la cellule (attention certains formats ne seront pas reportés tels quels : 06:00:00 donnera 0,25, 12% donnera 0,12 ..)
    Private Sub Worksheet_Change(ByVal Target As Range)
    'Remplacer Feuil2 par le nom de la feuille de recopie s'il est différent
    Sheets("Feuil2").Cells(Target.Row, Target.Column) = Target.Value
    End Sub


    2) S'il s'agit de reporter la cellule à l'identique (valeur, format, bordure, remplissage ..)
    Private Sub Worksheet_Change(ByVal Target As Range)
    'Remplacer Feuil1 et Feuil2 par les noms des feuilles de copie et de recopie s'ils sont différents
    
    'ligne et colonne de la cellule modifiée
    x = Target.Row
    y = Target.Column
    'reselectionne la cellule et la copie
    ActiveSheet.Cells(x, y).Select
    Selection.Copy
    ' desactive le raffraichissement écran (evite de voir passage d'une feuille à l'autre)
    Application.ScreenUpdating = False
    'selectionne la feuille de recopie, la cellule puis colle
    Sheets("Feuil2").Select
    Sheets("Feuil2").Cells(x, y).Select
    ActiveSheet.Paste
    ' revient sur la 1ere feuille
    Sheets("Feuil1").Select
    'réactive le rafraichissement écran
    Application.ScreenUpdating = True
    End Sub


    L'une ou l'autre macro est à placer dans le worksheet de la feuille source :
    ALT + F11 pour ouvrir éditeur VBA - double clic sur la feuille source dans l'arborescence à gauche - copier coller la macro dans la page blanche et fermer l'éditeur

    Cdlmnt
    Via
    0