Proszę o pomoc. Jaka składnia powinna zostać wpisana do edytora PowerQuery, aby po połączeniu danych z kilku źródeł dodać niestandardową kolumnę, w której pojawi się nazwa pliku źródłowego?
Proszę o pomoc. Jaka składnia powinna zostać wpisana do edytora PowerQuery, aby po połączeniu danych z kilku źródeł dodać niestandardową kolumnę, w której pojawi się nazwa pliku źródłowego?
Nie napisałeś nic o sposobie pozyskiwania tych danych. Jeśli wskazujesz na pliki bezpośrednio (np. Excel.Workbook(File.Contents("C:\folder\plik.xlsx"), null, true)), to z tego co wiem nie ma takiej możliwości, aczkolwiek możesz przypisać nazwę (ze ścieżką lub bez) do zmiennej i nią się posługiwać:
let plik = "C:\folder\plik.xlsx", Źródło = Excel.Workbook(File.Contents(plik), null, true), Arkusz1_Sheet = Źródło{[Item="Arkusz1",Kind="Sheet"]}[Data], #"Dodano kolumnę niestandardową" = Table.AddColumn(Arkusz1_Sheet, "Niestandardowe", each plik) in #"Dodano kolumnę niestandardową"
Przy opcji pobierania plików z folderu są dostępne kolumny z nazwą i ścieżką, tu wyciągniesz te dane bez problemu.
Mam aktualnie taki kod:
let Źródło = Folder.Files("C:\pliki"), #"Usunięto inne kolumny" = Table.SelectColumns(Źródło,{"Content", "Name"}), #"Połączono wartości binarne" = Binary.Combine(#"Usunięto inne kolumny"[Content]), #"Zaimportowano plik CSV" = Csv.Document(#"Połączono wartości binarne",[Delimiter=";", Columns=10, Encoding=1250, QuoteStyle=QuoteStyle.None]), #"Zmieniono typ" = Table.TransformColumnTypes(#"Zaimportowano plik CSV",{{"Column1", Int64.Type}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", Int64.Type}, {"Column9", Int64.Type}, {"Column10", type text}}) in #"Zmieniono typ"
Proszę wstawić taki kod i będzie dobrze. :)
let Źródło = Folder.Files("C:\pliki"), #"Usunięto inne kolumny" = Table.SelectColumns(Źródło,{"Content", "Name"}), #"Dodano kolumnę niestandardową" = Table.AddColumn(#"Usunięto inne kolumny", "Niestandardowe", each Csv.Document([Content],[Delimiter=";", Columns=10, Encoding=1250, QuoteStyle=QuoteStyle.None])), #"Usunięto kolumny" = Table.RemoveColumns(#"Dodano kolumnę niestandardową",{"Content"}), #"Rozwinięty element Niestandardowe" = Table.ExpandTableColumn(#"Usunięto kolumny", "Niestandardowe", {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10"}, {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10"}), #"Zmieniono typ" = Table.TransformColumnTypes(#"Rozwinięty element Niestandardowe ",{{"Column1", Int64.Type}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", Int64.Type}, {"Column9", Int64.Type}, {"Column10", type text}}) in #"Zmieniono typ"
Działa, dziękuję