嘿,我需要代码帮助,我试图弄清楚如何处理具有不同页数的不同文件。
我实际上是使用power bi从pdf的文件夹中提取数据,但问题是这些文件的页面数不同,在下面的代码中您可以看到我有3个表,每个表都在一个页面上(表1为第一页的表..),因此对于只有一页的pdf文件,表2和3不存在,所以我正在寻找一种方法来忽略会有错误的代码部分
let
Source = Pdf.Tables(#"Paramètre de l'exemple de fichier1"),
Table1 = Source{[Id="Table1"]}[Data],
#"En-têtes promus1" = Table.PromoteHeaders(Table1, [PromoteAllScalars=true]),
Table2=Source{[Id="Table2"]}[Data],
#"En-têtes promus2" = Table.PromoteHeaders(Table2, [PromoteAllScalars=true]),
Table3=Source{[Id="Table3"]}[Data],
#"En-têtes promus3" = Table.PromoteHeaders(Table3, [PromoteAllScalars=true]),
#"Table" = Table.Combine({#"En-têtes promus1", #"En-têtes promus2",#"En-têtes promus3"}),
#"Index ajouté" = Table.AddIndexColumn(Table, "Index", 1, 1),
#"Colonnes renommées" = Table.RenameColumns(#"Index ajouté",{{"Index", "Page"}})
in
#"Colonnes renommées"
答案 0 :(得分:0)
是的。您可以将try
和otherwise
用于可能发生错误的步骤。
更多详细信息: https://docs.microsoft.com/en-us/power-query/handlingerrors
答案 1 :(得分:0)
let
Source = Pdf.Tables(#"Paramètre de l'exemple de fichier1"),
Table005 = Source{[Id="Table005"]}[Data],
#"En-têtes promus1" = Table.PromoteHeaders(Table005, [PromoteAllScalars=true]),
#"Table010"=try Source{[Id="Table010"]}[Data] otherwise null,
#"En-têtes promus2" = Table.PromoteHeaders(Table010, [PromoteAllScalars=true]),
Table015=try Source{[Id="Table015"]}[Data] otherwise null ,
#"En-têtes promus3" = Table.PromoteHeaders(Table015, [PromoteAllScalars=true]),
#"Table" = try Table.Combine({#"En-têtes promus1", #"En-têtes promus2"}) otherwise #"En-têtes promus1",
#"Table2" = try Table.Combine({#"Table",#"En-têtes promus3"}) otherwise #"Table",
#"Index ajouté" = Table.AddIndexColumn(Table2, "Index", 1, 1),
#"Colonnes renommées" = Table.RenameColumns(#"Index ajouté",{{"Index", "Page"}})
in
#"Colonnes renommées"