XL 2010 Modifier l'affichage par défaut d'un menu déroulant en modifiant cellule d'un autre onglet (sans provoquer le déroulement)

sebbbbb

XLDnaute Occasionnel
Bonsoir à tous

Je me permets de faire appel à nouveau à vos connaissances pour un problème. Je souhaiterai en effet que l'affichage par défaut d'un menu déroulant s'actualise automatiquement si je modifie une donnée liée

Voir PJ

Dans l'onglet Num bl j'ai un menu déroulant dont la liste de choix est paramétrée en fonction :
- des 2 premiers chiffres du num de voyage (onglet 1)
- des 2 derniers chiffres du num de voyage (onglet 1)
- du num de bl indiqué dans l'onglet num de bl (onglet 2)

Mon menu déroulant fonctionne très bien. Le seul hic c'est que si je fais une modif de l'un des paramètres indiqué ci-dessus, l'affichage par défaut de mon menu déroulant ne se modifie pas automatiquement. Il faut que je provoque le déroulement de ce menu pour que les choix s'actualise.

Est il possible que cela se fasse sans avoir à dérouler a chaque fois ce menu déroulant ?

en vous remerciant par avance pour votre aide

seb
 

Fichiers joints

job75

XLDnaute Barbatruc
Bonjour sebbbbb,

Pour obtenir ce que vous voulez il faut faire une chose bizarre : créer une formule en B6 !!!

Et pour cela il faut du VBA, voyez cette macro dans le code de la feuille "Num bl" du fichier joint :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
With [B6]
    If Intersect(Target, .Cells) Is Nothing Then Exit Sub
    Application.EnableEvents = False 'désactive les évènements
    On Error Resume Next 'sécurité
    .Formula = "=INDEX(scac_code," & Application.Match(.Value, [scac_code], 0) & ")"
    Application.EnableEvents = True 'réactive les évènements
End With
End Sub
A+
 

Fichiers joints

Discussions similaires


Haut Bas