在导入csv文件的每一行中join一个pathvariables

我有很多导入文件,看起来像这样 在这里输入图像说明

所以每个团队成员都有销售价值,但里面没有期限。

这段时间编码的path如下:

AllData\201501\Revenues.txt AllData\201502\Revenues.txt AllData\201503\Revenues.txt 

我想从每个数据行的path中获得Periode,所以我最终的输出表应该如下所示:

在这里输入图像描述

所以我必须从文件内部的path上带上这段时间。

下面是一个完美的例子,解决如何访问path的问题:

如何从文件夹导入时保存path条件?

但是在那里,我还有一段“整体”的文字,而不是那一行。

在链接的问题中,您可以更改自定义列公式:

Text.FromBinary([Content])

Text.Split(Text.FromBinary([Content]), "#(000a)") (根据如何表示换行符,可能需要使用“#(000a)#(000d)”)。

这将在每一个新行分割文本,你会得到名称,值对的列表。 点击列名旁边的两个箭头框,展开该列。 现在每一行都应该有与名称,值对关联的时间段。 最后,用分号分隔列来分隔名称和值。

有两个选项,都涉及可怕的方程式。
第一个选项,我们假设path将在string中具有相同位置的周期。
例如,我们想要第一个和第二个斜线之间的数字。

 =TRIM(LEFT(SUBSTITUTE(MID(A1,FIND("|",SUBSTITUTE(A1,"\","|",1))+1,LEN(A1)),"\",REPT(" ",LEN(A1))),LEN(A1))) 

如果它在不同的斜杠之间,改变,1 ,告诉公式斜杠从哪里开始。 如果斜杠的数量可能不同,那么我们将不得不尝试第二个选项。

第二种select,我们假设这些是path中唯一的数字。
这个公式将提取这些数字:

 =SUMPRODUCT(MID(0&A1,LARGE(INDEX(ISNUMBER(--MID(A1,ROW($1:$25),1))* ROW($1:$25),0),ROW($1:$25))+1,1)*10^ROW($1:$25)/10) 

请注意,这将从string中提取所有数字。 如果path包含数字,则这些将被添加到string中。 例如C:\ 2014Data \ 201401 \ Revenues.txt将返回2014201401
如果这不能处理,那么自己把一个柱子放到桌子上可能会比较容易