笔者在工作中发现了无须循环就能实现合并日期参数表的方法,本文将与大家分享该思路。以下为需要合并的3个日期参数表:
合并以上日期参数表需要如下的代码:
第一步,我们需要使用Excel.Workbook()和File.Contents()函数组合读取参数表所在的工作簿。为了在[......]
国内首个M语言分享博客
笔者在工作中发现了无须循环就能实现合并日期参数表的方法,本文将与大家分享该思路。以下为需要合并的3个日期参数表:
合并以上日期参数表需要如下的代码:
第一步,我们需要使用Excel.Workbook()和File.Contents()函数组合读取参数表所在的工作簿。为了在[......]
不难发现,《匹配范围》中提到的第三种解题思路也适用于模糊匹配。接下来,先交代一下背景:假设有一表格(表格Data)只含有地址,现需要根据另一含有城市的表格(表格LookupTB)匹配出运费。
这个问题最直接的解决方法是为表格Data添加一计算列对表格LookupTB进行筛选,只保留城市[......]
在领导的要求下,现需要对IT部门生成的存款表进行集中化加工,方便其他同事共享。其中一项加工要求根据已经合并好的日期表参数表把存款表中的到期日所处于的日期范围匹配出来。考虑到存款表的行数比较多并且还需要添加其他的计算列,所以需要比较不同的匹配方法。
因为某个到期日处于某个时间范围时必须满[......]
下图为记录着客户存款的Data表格:
现在需要按照以下三个日期参数表,对以上表格的到期日所处于的时间范围进行归类。注:为了尽可能降低代码的维护成本,建议日期参数表的命名具备一定的特征,并且容易排序。因此,本案例的日期参数表的命名都符合"MB阿拉伯数字_用途英文简称"规律。
[......]
在某些办公情景中,有时需要把同一列的多个文本替换成新的文本。假设现在需要把如下表格ProductList中Product列的"A(ii)", "B(ii)"以及"C(ii)"分别替换成"A", "B"以及"C":
对于这个问题,最直接的解决办法是进行三次常规替代,以下为该思路的代码:
[......]
第三章的内容为在第二章的假设与前提下,使用递归的思路完成路径图的构建与展开。首先,需要把数据一分为二,一组只有处于顶层的成员,其他的成员为另一组。以下为分组用到的代码:
Child字段与Parent字段相同的成员为最顶层的成员,Table.SelectRows()就是利用这一特点把最顶层的[......]
第二章的主题为在最大层数MaxLv未知的情况下构建和展开路径图,在开始之前需要讲解如何使用生成数据(第一章节的内容)的附件。首先,请把附件中Data文件夹解压至C:\中。然后,请按以下表格的指示更新文件夹中每一个工作簿的A2单元格后按下快捷键Alt+A+R+A:
工作簿名称工作表名称旧值新值D[......]
本文将延续施阳老师的《BOM树形结构分解》,细化路径图的构造以及展开。由于篇幅的缘故,所有的内容将分为多个章节进行讲解。第一章节的主题为通过M语言构造用于分析的数据。
Group1Group2Lv1A000001A000002Lv2B000001B000002Lv3C000001C000002[......]
Table.Split()可以抽象地概括为function(table as table, pageSize as number) as list,大概的意思为这个函数的第一个参数为需要进行自上而下地分割的表格,而第二个参数则指明了被分出来的表格至少有多少行。以下将通过回顾Table.Combine[......]
Table.Schema()的唯一参数的数据类型为表格。该函数的结果为一表格,其第一列从上至下的文本值对应参数表从左到右的字段名称。从第二列开始,每一列中的值为同一行的第一列中的文本值对应于参数表中的字段的某一特征(比如:该字段的数据类型)。类似于Table.Profile(),Table.Sche[......]