Petite variation sur le double clic pour inverser des valeurs

Suite au commentaire de Patrick, voici un petit code qui permet d'inverser les valeurs de la colonne 2 vers la 3 et inversement, en double cliquant sur une des colonnes :

Vous pouvez télécharger le fichier ici

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    'Definition des variables
    Dim arrInverseValeurs As Variant
    ReDim arrInverseValeurs(1 To 1, 1 To 2) As Variant
    'on peut aussi ajouter ici une verification, par exemple
    Dim iColonneGauche As Integer
    Dim iColonneDroite As Integer
    iColonneGauche = 2
    iColonneDroite = 3
    'on verifie qu'on est sur les bonnes colonnes
    If ActiveCell.Column <> iColonneGauche And ActiveCell.Column <> iColonneDroite Then Exit Sub
    'on stocke les valeurs
    arrInverseValeurs(1, 1) = Cells(ActiveCell.Row, iColonneDroite).Value
    arrInverseValeurs(1, 2) = Cells(ActiveCell.Row, iColonneGauche).Value
    'on rapatrie les donnees avec les valeurs inversees
    'l'utilisation du tableau permet de gagner du temps
    'en n'écrivant qu'une seule fois les valeurs dans la feuille
    Range(Cells(ActiveCell.Row, iColonneGauche), Cells(ActiveCell.Row, iColonneDroite)).Value = arrInverseValeurs
    'on sort de la formule
    Cancel = True
End Sub

A bientôt.

Gaetan

PS : Ne manquez aucune nouvelle astuce sur Excel, abonnez-vous à notre newsletter gratuite !
Pour marque-pages : permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *