Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Récupérer les valeurs de cellules résultant d'un choix dans une liste.

Zorglub6

XLDnaute Nouveau
Bonjour,

Une liste déroulante permet de choisir une donnée X (X1, X2, X3, X...) qui sera utilisée dans plusieurs formules, dans plusieurs cellules, sur plusieurs feuilles, pour donner plusieurs résultats Y (Y1, Y2, Y3, Y...).

Sur une feuille séparée, je récupère la liste source de tous les X et j'aimerais récupérer tous les Y en face, dans une autre feuille, sans pour autant recalculer l'intégralité des calculs effectués.

____Y1___Y2___Y3___Y...
X1__X1Y1_X1Y2_X1Y3_X1Y...
X2__X2Y1_X2Y2_X2Y3_X2Y...
X3__X3Y1_X3Y2_X3Y3_X3Y...
X...__X...Y1_X...Y2_X...Y3_X...Y...

Une idée de solution?

Idéalement, la solution est sans macro, ni VBA.

Merci!
 

ERIC S

XLDnaute Barbatruc
Re
si j'ai bien compris tu veux les résultats de la colonne H de la feuille Yx et j été donne les nombres en N
si c'est cela il faut modifier l'adresse de la cellule nommée débutRésultat
tu vas dans l'onglet formule du ruban
gestionnaire de nom
debutRésultat
modifier
et tu mets H au lieu de N dans l'adresse
 

job75

XLDnaute Barbatruc
Bonsoir Zorglub6, ERIC S,
Code:
Sub MAJ()
Dim F As Worksheet, P As Range, tablo, ncol%, colref As Range, i&, j%
Set F = Sheets("Yx")
Set P = Sheets("synthèse").[C6].CurrentRegion 'à adapter éventuellement
tablo = P 'matrice, plus rapide
ncol = UBound(tablo, 2)
With F.[A8].CurrentRegion 'à adapter éventuellement
    Set colref = .Columns(.Columns.Count).Cells
End With
For i = 2 To UBound(tablo)
    F.Range("B4") = tablo(i, 1)
    For j = 2 To ncol
        If Not IsError(colref(j)) Then tablo(i, j) = colref(j)
Next j, i
P = tablo 'restitution
F.Range("B4") = tablo(2, 1)
End Sub
A+
 

Pièces jointes

  • Récupérer les valeurs de cellules résultant d'un choix dans une liste(1).xlsm
    33.5 KB · Affichages: 15

Discussions similaires

Réponses
0
Affichages
157
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…