Kategorie szkoleń | Egzaminy | Kontakt
  • 4
  • 0
  • 1

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?

Paweł_Gonciara
  • Zapytał
  • @ Paweł_Gonciara | 16.01.2019
    • 0
    • 0
    • 0
Zaloguj się aby zadać pytanie
Pokrewne

Odpowiedzi (4)

  • 0

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.

Mirosław_Janiak
  • Odpowiedział
  • @ Mirosław_Janiak | 16.01.2019
    • 1
    • 7
    • 1
  • 0

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"



Paweł_Gonciara
  • Odpowiedział
  • @ Paweł_Gonciara | 16.01.2019
    • 0
    • 0
    • 0
  • 1

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"

 

 

  • Odpowiedział
  • @ | 17.01.2019
  • TRENER ALTKOM AKADEMII
  • 0

Działa, dziękuję

Paweł_Gonciara
  • Odpowiedział
  • @ Paweł_Gonciara | 17.01.2019
    • 0
    • 0
    • 0