Contact: 514-605-7112 / info@lecfomasque.com
Contact: 514-605-7112 / info@lecfomasque.com

En réponse à une question sur notre forum: Recherche une valeur texte selon une date

Publié le : 18 février 2018

Il y a quelques heures, Julien a posé la question suivante sur notre forum:

Question Julien Forum

 

Cet article vise à répondre à Julien en expliquant comment résoudre cette problématique.

 

D’abord, mentionnons qu’il existe plusieurs façons de solutionner cette problématique. Nous avons opté pour Power Query car nous croyons que c’est la solution la plus simple et que les usagers d’Excel devraient se tourner de plus en plus vers cette solution. Sachez que Power Query peut être ajouté à n’importe quelle version d’Excel 2010 et 2013 et qu’il est imbriqué dans le menu Données d’Excel 2016 (ne cherchez pas toutefois le mot Power Query, vous ne le trouverez pas… les options sont plutôt sous le menu Récupérer et transformer).

 

Données de départ

Julien possède deux tables.

 

La première table (Paie) comprend la liste des matricules et des périodes de paie associées à chaque matricule.

Paie

 

La deuxième table (Adresses) comprend les adresses par matricule. Toutefois, un même matricule peut avoir plus d’une adresse puisque l’employé sous-jacent a pu déménager à quelques reprises au fil du temps.

Adresse

 

Le résultat recherché et fourni par notre démarche est le suivant:

Résultat

 

Power Query: Fusion des tables

Nous avons déjà rédigé de nombreux articles sur Power Query donc nous allons simplement mettre notre focus sur les étapes les plus importantes. D’abord, on importe les 2 tables dans Power Query (la table Paie et la table Adresses). Ensuite, nous fusionnons la table Adresses à la table Paie.

Fusion avec adresses

 

En développant le contenu de la table Adresses, on obtient donc le résultat ci-dessous. À noter que chaque matricule est maintenant associé plusieurs fois à la même date de paie (autant de fois qu’il y a d’adresses dans la table d’adresses). Ce résultat est donc un résultat intermédiaire. C’est à l’aide de ce résultat intermédiaire qu’on obtiendra notre résultat final.

Résultat fusion

 

Power Query : Colonnes conditionnelles, colonnes personnalisées et filtre

 

Pour l’usager qui ne maîtrise pas le langage M

On ajoute ensuite une colonne conditionnelle qui retourne 1 lorsque la date de début est inférieure à la date de fin de période de paie et 0 lorsque ce n’est pas le cas.

Condition 1

 

On ajoute ensuite une autre colonne conditionnelle qui retourne 1 lorsque la date de fin est après ou égale à la date de fin de période de paie et 0 lorsque ce n’est pas le cas.

Condition 2

 

On ajoute ensuite une colonne personnalisée qui fait la somme des 2 colonnes précédentes.

Colonne personnalisée

 

Au final, on peut donc faire un filtre sur la colonne Somme, pour toutes les valeurs = 2, i.e. lorsque les 2 conditions sont rencontrées (lorsque la date de paie se trouve dans l’intervalle de dates de début et de fin de l’adresse).

Filtre sur 2

 

On peut ensuite supprimer les colonnes dont on n’a pas besoin.

Résultat final après suppression colonnes

 .

Pour l’usager qui maîtrise le langage M

Au lieu de créer 2 colonnes conditionnelles et 1 colonne personnalisée, on pourrait obtenir le même résultat plus rapidement en remplaçant le tout par une seule colonne personnalisée, qui utiliserait le code ci-dessous. En effet, vous noterez que les colonnes conditionnelles dans Power Query ne permettent pas les conditions avec des ET ou des OU. Dans ce cas, il faut ajouter des colonnes intermédiaires (méthode ci-dessous) ou utiliser le langage M (méthode ci-dessous).

Code M

 

Au final, on arrive au résultat souhaité assez simplement. Dès que les sources de données évolueront, on pourra rafraîchir notre requête et la table de résultats se mettra alors à jour automatiquement.

 

Si vous n’utilisez pas encore Power Query, c’est tout à votre désavantage. La quantité de travail que vous vous épargnerez en utilisant Power Query est inestimable. À ce sujet, sachez que nous offrons une formation Excel – Introduction à Power Query et au langage M, en classe, en entreprise et en ligne.

 

CFO-Masque_Formations-en-ligne_FB

Le CFO masqué offre un vaste choix de formations en informatique décisionnelle avec Excel et Power BI, via un portail en ligne et à distance en temps réel, selon un calendrier. Si vous désirez organiser des formations privées, faites nous simplement parvenir un courriel à info@lecfomasque.com . Des certificats convenant aux normes de formation continue des divers ordres professionnels du Québec sont offerts pour l’ensemble des formations.

 

Découvrez quelles formations vous conviennent

 

smarchand

Sophie Marchand, M.Sc., CPA, CGA, MVP, est détentrice d’une M.Sc. en finance corporative et d’un titre comptable CPA, CGA. Elle est également MVP Office Apps and Services (Excel) et MVP Data Platform (Power BI). Le titre de MVP est un titre honorifique remis par Microsoft et signifie « Most Valuable Professional ». Il est attribué à des experts de solutions Microsoft qui se distinguent non seulement par leurs compétences mais également par leur implication dans la communauté. Seuls 4 professionnels possèdent cette double-qualification dans le monde. Mme Marchand cumule de nombreuses années d’expérience dans le milieu des affaires et se spécialise en modélisation financière et en intelligence d’affaires avec Excel et Power BI. Après avoir longtemps offert ses services comme consultante, elle se consacre désormais à la formation, sous toutes ses formes (formations en classe, formations en ligne, formations en entreprise, webinaires, animation de groupe d'usagers, rédaction d'articles de blogue, animation de forum en ligne et plus encore). Vous pouvez d'ailleurs la retrouver à la tête du groupe d'usagers Montreal Modern Excel and Power BI.

Laisser un commentaire