[PowerQuery] Ajouter une colonne vide si nombre_colonnes <> 7
Bonjour à tous
Je vous explique mon problème.
Je récupére des données depuis une page web via PowerQuery.
Je fais ensuite, dans une feuille Excel plusieurs calculs en me basant sur des RechercheV pour récupérer les données.
Le problème c'est qu'il y a des cas où il manque une colonne dans ma source de départ. Les données sont donc décalés !

En détail :
Je débute par un petit tableau qui sert ensuite à passer les paramètres

Je fais ensuite appel à une requête qui fait elle-même appel à une fonction
// Requete Recup_CashFlow
let
// Récuperation des données de ZoneBourse pour chaque codeZoneBourse passé en param
Source = Excel.CurrentWorkbook(){[Name="Data_Manuel"]}[Content],
#"Invoked Custom Function" = Table.AddColumn(Source, "fnExtraction", each fnExtraction_CashFlow([CodeZoneBourse])),
#"fnExtraction développé" = Table.ExpandTableColumn(#"Invoked Custom Function", "fnExtraction", {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7"}, {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7"}),
// Je rajoute une colonne qui concaténe le Mnemo (identifiant) et le type d'info. Je pourrais ensuite m'en servir comme colonne index pour la RechercheV
#"ADD Mnemo-Infos" = Table.AddColumn(#"fnExtraction développé", "Mnemo-Infos", each [Mnemo] & "-" & [Column1]),
#"Colonnes permutées" = Table.ReorderColumns(#"ADD Mnemo-Infos",{"Mnemo-Infos", "Nom", "Mnemo", "CodeZoneBourse", "Commentaire", "Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7"}),
#"Colonnes supprimées" = Table.RemoveColumns(#"Colonnes permutées",{"Nom", "Mnemo", "CodeZoneBourse", "Commentaire", "Column1"})
in
#"Colonnes supprimées"// fonction fnExtraction_CashFlow
(CodeZoneBourse as text) =>
let
AddressStart="https://www.zonebourse.com/",
AddressEnd="/fondamentaux/",
FullAddress=AddressStart & CodeZoneBourse & AddressEnd,
Source = Web.Page(Web.Contents(FullAddress)),
DATA_TAB1 = Source{4}[Data],
// Je supprime des lignes pour ne conserver QUE ce dont j'ai besoin
#"Premières lignes supprimées" = Table.Skip(DATA_TAB1,1),
#"Autres lignes supprimées" = Table.AlternateRows(#"Premières lignes supprimées",1,6,2)
in
#"Autres lignes supprimées"J'obtiens le tableau de tout à l'heure

Je me sert ensuite, dans un autre onglet à faire des calculs et autre.
Pour l'exemple, je ne mets qu'un rechercheV
=RECHERCHEV(B2&"-Cash Flow Par Action ( € )";'Recup_CashFlow'!A:G;5;FAUX)
Je souhaite, dans PowerQuery, si le nombre de colonne est différent à 7, ajouter une colonne entre 3 et 4
Est-ce possible ?
Merci d'avance pour votre aide
Bonjour,
Un retour sur cette proposition ?
Cdlt.