Forum Discussion

il_han's avatar
il_han
New Member
3 years ago

PowerQuery - About Using the First Two Lines as Headers

Merhabalar, bir konuda desteğinize ihtiyacım var, forum ve benzeri yerlere baktım fakat çözüm bulamadım. Bana yardım edebilirsen mutlu olurum. PowerQuery'de başlık olarak kullanmak istediğim değerlerin bir kısmı birinci satırda, bir kısmı da ikinci satırda. Bunları PowerQuery'de Başlıklar olarak nasıl kullanmalıyım? İlk iki satırı başlık olarak kullanmak istiyorum.

 

 

4 Replies

  • ppm1's avatar
    ppm1
    Solution Sage

    Here's one way to do it in the query editor.  To see how it works, just create a blank query, open the Advanced Editor and replace the text there with the M code below.

     

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WUtIBIQ9jEGGiFKsTreRhCGIbQSTAIolABkgQQoNEkoAskAoIDRJJBrJAhkDo2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t, Column4 = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}}),
        Custom1 = #"Changed Type",
        Custom2 = Table.FromColumns(List.Transform(Table.ToColumns(Custom1), each if List.Contains({null, ""}, _{0}) then List.RemoveFirstN(_, 1) else List.RemoveRange(_,1,1) )),
        #"Promoted Headers" = Table.PromoteHeaders(Custom2, [PromoteAllScalars=true]),
        #"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"H1", type text}, {"H2", Int64.Type}, {"H3", type text}, {"H4", Int64.Type}})
    in
        #"Changed Type1"

     

    Pat

  • m_dekorte's avatar
    m_dekorte
    Resident Rockstar

    Hello il_han 

     

    Google kullanılarak çevrildi.
    Birinci veya ikinci satırda yalnızca bir değer var gibi görünüyor.

     

    Süreci bölmek için sorgunuzu çoğaltın. Başlığı oluşturmak için en üstteki 2 satırı koruyun, Dönüştür'e gidin, tabloyu yan tarafına çevirmek için Devrik'i kullanın, 2 sütunu birleştirin ve bir değerler listesi döndürmesi için sütunda Detaya inin (Ayrıntıya gitmek için başlığa sağ tıklayın), bu sorguyu arayın: Başlıklar.

     

    Bu başlıkları ana sorguya geri getirmek için üstteki 2 satırı kaldırın ve sütunları yeniden adlandırma adımı oluşturun. Bu adımdaki kodu burada gösterildiği gibi güncelleyin:

     

    Table.RenameColumns( PrevStepName, List.Zip( { Table.ColumnNames(PrevStepName), Headers } ))

    PrevStepName'i sorgunuzdaki önceki adım adıyla değiştirin

     

    Bu, sorunuzu çözmeye yardımcı oluyorsa, lütfen bu gönderiyi çözüm olarak işaretleyin.

    • il_han's avatar
      il_han
      New Member

      There is a really simple solution. Thank you very much..