Bon, elles arrivent quand les cases d'options dans Excel ?

J'adore les nouvelles cases à cocher, mais parfois je ne veux pouvoir en cocher qu'une seule pour une plage spécifique, et que les autres cases à cocher se décochent automatiquement.

VBA permet de faire cela hyper-rapidement :

- clic droit sur la feuille, visualiser le code
- coller le code ci-dessous (généré par une IA alimentée partiellement par 20 ans d'écriture de blogs sur www.xlerateur.com !)
- changer la plage sur laquelle le bouton d'option doit s'appliquer.

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim chkRange As Range
   Set chkRange = Me.Range("A1:A2") ' <-- Plage à ajuster
   If Not Intersect(Target, chkRange) Is Nothing Then
       Application.EnableEvents = False
       Dim cell As Range
       For Each cell In chkRange
           If cell.Address <> Target.Address Then
               cell.Value = False
           End If
       Next cell
       Application.EnableEvents = True
   End If
End Sub

Reste plus qu'à changer le petit carré pour un petit cercle...

Là, c'est un peu moins évident. La suite dans un prochain post si je trouve !

PowerToys a encore frappé !

Mon petit frère me demandait récemment comment éditer une formule dans Excel, sans utiliser F2. Le problème vient du clavier des portables qui oblige à utiliser la touche fonction qui n'est pas pratique.

En fait, PowerToys peut le faire via le "Keyboard Manager" pour re-cartographier une touche.

Processus dans l'image

L'indispensable touche F4

L'ajout d'un $ devant la ligne ou la colonne permet de recopier une formule vers le bas ou vers la droite en gardant la référence initiale. On a ainsi figé la référence.

Par exemple, A$1 recopié vers le bas sera toujours A$1, alors que A1 se transformera en A2.

Etape 1 : sélectionner une référence dans une formule.

Etape 2 : appuyer sur F4, automatiquement un $ est ajouté à la ligne, colonne, aux deux, puis pas du tout et on reboucle.