XL 2013 réécrire cellule supprimé ailleurs

jcpat

XLDnaute Occasionnel
Bonjour,
je reviens vers vous pour une problématique que seul un expert pourrais trouver :)
je cherche à réinscrire automatiquement dans une cellule le texte que j'aurais supprimé manuellement d'une autre cellule.

Dans mon fichier , j'efface manuellement le contenu de la cellule bleu (la couleur de la cellule n'a pas d'importance) et le but est que ce contenu se réécrive dans la cellule jaune automatiquement.

Merci par avance
 

Pièces jointes

  • cellulesupp.xlsx
    8.2 KB · Affichages: 15

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Jcpat,
Un essai en PJ. En deux parties :
- Quand on clique sur G5, on mémorise sa valeur
-Quand on efface G5 alors on met la valeur SaveValue en A2
avec :
VB:
Public SaveValue
' Quand on clique sur G5, on mémorise sa valeur
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("G5")) Is Nothing Then
        SaveValue = Target
    End If
Fin:
End Sub
' Quand on modifie la valeur de G5 et que G5 devient vide alors on met la valeur SaveValue en A2
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("G5")) Is Nothing Then
        If Target = "" Then [A2] = SaveValue
    End If
End Sub
 

Pièces jointes

  • cellulesupp.xlsm
    13.9 KB · Affichages: 4

jcpat

XLDnaute Occasionnel
ahhh désolé Sylvanu , j'ai pas pensé j'ai parlé sur une cellule mais c'est un tableau en faite, du coup avoir la même solution possible d'un tableau A vers B (ou B vers A), toujours en supprimant une cellule quelconque du tableau mais celle ci se réécrit à la même position sur l'autre tableau..
 

Pièces jointes

  • cellulesupp.xlsx
    8.2 KB · Affichages: 4

sylvanu

XLDnaute Barbatruc
Supporter XLD
C'est "presque" la même chose :
VB:
Public SavedValue, SavedAddress
' Quand on clique sur une cellule du tableau A, on mémorise sa valeur et son adresse
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A11:C16")) Is Nothing Then  ' Plage à adapter
        SavedValue = Target
        SavedAddress = Target.Address
    End If
Fin:
End Sub
' Quand on modifie une valeur du tableau A et que cette valeur devient nulle on tranfert en tableau B
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A11:C16")) Is Nothing Then  ' Plage à adapter
        If Target = "" Then
            Range(SavedAddress).Offset(0, 4) = SavedValue   ' 4 décalage colonne de tableau A vers tableau B. A adapter
        End If
    End If
End Sub
Il vous faut adapter A11:C16 qui est le tableau d'origine
Le décalage du tableau B par rapport au tableau A ( en ligne et en colonne )
Dans l'état, tableaux source et destination sont sur la même feuille.
 

Pièces jointes

  • cellulesupp (1).xlsm
    16 KB · Affichages: 11

jcpat

XLDnaute Occasionnel
Bonjour

J'ai pu adapter la solution à mon fichier et cela fonctionne parfaitement, j'ai cependant une question est il possible de réaliser dans la même source le retour arrière.
c'est à dire je bascule par exemple pierre de A vers B , si je supprime pierre de B il retourne en A..

j'ai essayé d'adapter la solution mais je doit me perdre dans les enchainements :-(
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re, c'est fait en PJ. Je n'ai fait que dupliquer et aménager.
Par contre il y a un souci. Quand on supprime une valeur mais que l'équivalent dans l'autre tableau n'est pas vide, que faire ?
Dans la PJ j'écrase sans chercher à comprendre.
 

Pièces jointes

  • cellulesupp (2).xlsm
    16.6 KB · Affichages: 6

jcpat

XLDnaute Occasionnel
Merci Sylvanu :) , c'est vraiment au top .
La solution parait tellement simple quand on la regarde.
Pour ce qui est du tableau pas de souci pour moi car le tableau B est au point de départ toujours vide. Pour mon fichier c'est juste un emplacement de séparation de données du tableau A et le retour arrière c'est juste si je doit annuler ma saisie.
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 172
Membres
112 676
dernier inscrit
little_b