Microsoft 365 Besoin aide Excel matriciel

Ramy

XLDnaute Nouveau
Bonjour,
Je souhaiterai avoir une aide svp:

Onglet1 (feuill3): base de données avec pleins de colonnes
Onglet 2 'feuill4) : je souhaiterai recopier certaines données de l'onglet 1 sous conditions et qui ne m'ajoute pas de lignes vides

EX: Si le colonne A de la feuill 3 contient "M" ET la colonne E contient "PAris" alors me mettre M dans l'onglet 2

Ensuite, je souhaiterai copier la référence associé à la valeur qui vient d'être copié plus haut

Voir pj pour l'Excel

On m'a dit que via le calcul matriciel c'est faisable mais je ne parviens pas à comprendre ..

Merci beaucoup pour votre aide
 

Pièces jointes

  • excel.xlsm
    14.6 KB · Affichages: 6

chris

XLDnaute Barbatruc
Bonjour

Tu peux avoir plusieurs références

Avec 365, utilise plutôt PowerQuery...

Lise à jour par Données, Actualiser tout, ou en ajoutant une ligne de code associée au changement dans le tableau de choix de lettre et Ville
 

Pièces jointes

  • Extrait_PQ.xlsm
    25.6 KB · Affichages: 7

chris

XLDnaute Barbatruc
RE

Le tableau vert est bien ce que tu voulais (tu peux le mettre sur un autre onglet) ?

Il correspond à l'extrait de ton tableau initial, pour la letter et ville indiquées dans le tableau du milieu correspondant

PowerQuery est aussi intégré dans 2016
 

chris

XLDnaute Barbatruc
RE

Comme expliqué, dans la mesure où tu ne maîtrise pas les formules et où il peut y avoir plusieurs lignes, j'ai utilisé PowerQuery

J'ai
  • ajouté des titres ( à compléter) à ta source et mis sous forme de tableau, nommé Data
  • créé le tableau nommé Choix avec les colonnes Lettre et Ville
  • depuis une cellule de Choix, onglet Données, A partir d'un tableau ce qui ouvre PowerQuery
  • sortir par Fermer et Charger dans, connexion uniquement
  • depuis une cellule de Data, onglet Données, A partir d'un tableau
  • sélectionner la colonne Ville de Data, clic droit, Transformer, Supprimer les espaces (tu as des villes avec un espace à la fin ce qui ne va pas)
  • onglet Accueil, Fusionner les Requêtes : choisir Choix en seconde requête, sélectionner dans chacune les colonnes Lettre et Ville, jointure Interne
  • sélectionner la colonne Réf, clic droit, Supprimer les autres colonnes
  • sortir par Fermer et Charger dans, Table et choir la cellule où tu veux le tableau de résultat
 

R@chid

XLDnaute Barbatruc
Bonjour @ tous,
Salut Chris,
@ Ramy,
N'oublie pas qu'à chaque changement d'un critère, il faudrait actualiser la requête, tu peux y accéder rapidement avec un clic droit dans une cellule du tableau vert puis "Actualiser".


Cordialement
 

chris

XLDnaute Barbatruc
Bonjour à tous
Salut R@chid

On peut aussi ajouter une ligne de code sur Worksheet_Change de la feuille contenant le tableau Choix :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, [Choix]) Is Nothing Then ThisWorkbook.RefreshAll
End Sub
 

Statistiques des forums

Discussions
311 710
Messages
2 081 781
Membres
101 817
dernier inscrit
carvajal