Inverser deux valeurs avec un double clic

Bonjour à tous,

Voici un petit code qui permet d'inverser les valeurs de la cellule active avec la cellule à droite de celle-ci.

J'ai du l'utiliser lors d'un traitement semi-automatique d'extrait de compte. Parfois, le débit et le crédit étaient inversés et je voulais rapidement inverser les données. Un autre avantage est que la formule n'est pas perdue. Un couper-coller aurait remplacé la formule par un #REF.

Voici donc un fichier exemple :
cliquez ici pour télécharger

Et le code:
Vous noterez l'utilisation de l'array (variable tableau : arrInverseValeurs) qui permet de ne coller les données qu'une seule fois, et donc d'économiser un recalcul automatique.

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
    If ActiveCell.Column <> 2 Or ActiveCell.Row <= 7 Then Exit Sub
    'on stocke les valeurs
    arrInverseValeurs(1, 1) = Cells(ActiveCell.Row, ActiveCell.Column + 1).Value
    arrInverseValeurs(1, 2) = Cells(ActiveCell.Row, ActiveCell.Column).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, ActiveCell.Column), Cells(ActiveCell.Row, ActiveCell.Column + 1)).Value = arrInverseValeurs
    'on sort de la formule
    Cancel = True
End Sub

Créer une image liée, une autre méthode

Bonjour,

Vous connaissez surement la méthode qui permet de créer une image liée à une cellule :
1/ Copier la cellule
2/ Choisir Collage image liée (le dernier bouton en bas à droite de coller)
3/ vous pouvez ensuite déplacer l'image qui a été positionné directement sur la cellule.

Voici une autre manière de faire suggérée par Claude S.
1/ Créer une zone de texte
2/ Sélectionner une plage de cellules
3/ Sélectionner le bord de la zone de texte (curseur en croix)
4/ Coller
5/ Une zone de texte contenant l'image de la plage a été créée au-dessus de la plage sélectionnée.

Sauf erreur, je pense qu'on arrive au même résultat.
La deuxième solution me semble moins rapide, mais j'ai l'impression qu'il y a des utilisations potentielles non soupçonnées... Des idées ?

A bientôt

Gaetan

Gestion des formes dans Excel

Bonjour,

Je travaille actuellement sur un livre, et nous sommes en train de faire un diagramme assez complexe avec des centaines de formes.

Excel n'est peut-être pas l'outil idéal, mais comme je le maitrise relativement bien, je l'ai quand même choisi 🙂

Dans cette vidéo, retrouvez une dizaine d'astuces pour gérer ces formes :
- Créer un cadre orthonormé
- Utiliser des connecteurs
- Touches CTRL et ALT
- Volet sélection pour sélectionner en un clic
- Ajouter un curseur pour sélectionner en traçant un cadre autour des formes
- Groupes les formes
- Renommer les formes ou les groupes

Et bien plus...

A bientôt.

Gaëtan