[英]How can I export power query data from excel into a csv with built-in tools?
我正在嘗試從 excel 中的 ETL 操作中導出大量數據以供以后查詢。
為此,我需要 csv 中的數據。
但是,excel 不允許表中存在超過 100 萬行。
我該如何解決這個限制?
我確定這可以通過將數據旋轉到單元格中來實現。 由於每個單元格可以容納 32767 個字符,因此我可以將表格中的幾行壓縮到每個單元格中。 我將選擇一個不是逗號的分隔符,以便稍后在針對此 csv 的查詢期間將列取消透視到行。
定制的 function 為:
// function to compress data for export to csv in excel
let
Source = (delimiter as text, maxChars as number, input as table, colname as text) => let
Source = input,
#"Changed Type" = Table.TransformColumnTypes(Source,{{colname, type text}}),
#"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 0, 1, Int64.Type),
#"Renamed Columns" = Table.RenameColumns(#"Added Index",{{colname, "main"}}),
avg = Number.RoundUp((List.Average(List.Transform(#"Renamed Columns"[main], each Text.Length(_)))),0),
compression = Number.RoundDown(maxChars/(avg +1),0),
#"Divided Column" = Table.TransformColumns(#"Renamed Columns", {{"Index", each Number.RoundDown(_ / compression,0)}}),
#"Grouped Rows" = Table.Group(#"Divided Column", {"Index"}, {{
"comp",
each Text.Combine(List.Transform(
Table.ToList(
Table.SelectColumns(
_, {"main"})
), each Text.Combine(
{_, delimiter}
) ))
}}
),
#"Removed Columns" = Table.RemoveColumns(#"Grouped Rows",{"Index"})
in
#"Removed Columns"
in
Source
使用 DAX Studio 導出到 csv。 這是一個免費的工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.