Passer au contenu

Afficher automatiquement une liste de choix

Solution : en écrivant un petit programme en VBA.

Avec Excel 2000, les listes de choix permettent d’insérer automatiquement, dans des cellules, un des termes placés dans les cellules voisines. Entrez par exemple Voiture en C6, Train en C7, Avion en C8. Sélectionnez la cellule C9 et effectuez un clic droit. Optez pour Liste de choix. Les trois termes, Voiture, Train et Avion s’affichent (par ordre alphabétique) dans une liste déroulante. Sélectionnez Train par exemple. Vous pouvez ainsi recommencer l’opération autant de fois que désiré. Pour aller plus vite et pour faire apparaître la liste de choix à chaque fois que vous sélectionnez une cellule sous (ou sur) une colonne de termes, il faut écrire une petite macro en VBA.Pour cela, appuyez sur + afin d’afficher Visual Basic Editor. Puis cliquez deux fois sur l’icône ThisWorkbook dans le volet Projet – VBA Project situé dans la partie gauche de la fenêtre. Saisissez alors le listing ci-dessous dans la fenêtre qui s’affiche. Enregistrez le programme et quittez Visual Basic Editor. Sélectionnez C10. Automatiquement la liste de choix s’affiche. Choisissez Avion, Train ou Voiture. Si vous désirez saisir un terme qui ne figure pas dans la liste, appuyez sur afin de faire disparaître cette dernière.Listing :
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Cible As Excel.Range)
On Error Resume Next
With Cible
If .Value <> “” Then Exit Sub
If .Row = 1 Or .Row = 65536 Then Exit Sub
If .Offset(-1, 0).Value = “” And .Offset(1, 0).Value = “” Then Exit Sub
If Selection.Address <> .Address Then Exit Sub
End With
Application.EnableEvents = False
SendKeys “+{F10}L”
Application.EnableEvents = True
End Sub

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Filigrane Press