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

Publié le 18 février 2018
par Sophie Marchand M.Sc.
Fusion avec adresses

Il y a quelques heures, Julien a demandĂ© comment obtenir les adresses par pĂ©riode de paie, de chaque employĂ©, dans Power Query. Voici plus spĂ©cifiquement la question qu’il a posĂ© sur notre forum:

obtenir les adresses par période de paie

 

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.

obtenir les adresses par période de 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.

obtenir les adresses par période de paie

 

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

obtenir les adresses par période de paie

 

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, afin d’obtenir les adresses par pĂ©riode de paie, on va commencer par importer 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, soit les adresses par pĂ©riode de paie.

obtenir les adresses par période de paie

 

Vous avez des sources de donnĂ©es volumineuses Ă  rassembler et analyser dans Excel ? Apprenez Ă  automatiser tout le processus d’importation, de transformation et de modĂ©lisation  des donnĂ©es avec nos formations sur Power Query et Power Pivot dans Excel.

 

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. Ceci nous permet bel et bien d’obtenir les adresses par pĂ©riode de paie.

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, soit obtenir les adresses par pĂ©riode de paie. 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.

 


 

Fichier d’accompagnement VIP Ă  tĂ©lĂ©charger

Pour télécharger le fichier utilisé dans ce tutoriel, devenez membre VIP du CFO masqué.

 

Formation complémentaire

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.

 

Voici quelques commentaires d’apprenants ayant suivi cette formation :

Commentaires d'apprenants - Excel – Introduction à Power Query et au langage M

CFO-Masque_Formations-en-ligne_FBLa mission du CFO masquĂ© est de dĂ©velopper les compĂ©tences techniques des analystes et des contrĂŽleurs de gestion en informatique dĂ©cisionnelle avec Excel et Power BI et favoriser l’atteinte de leur plein potentiel, en stimulant leur autonomie, leur curiositĂ©, leur raisonnement logique, leur esprit critique et leur crĂ©ativitĂ©.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut