月度日期表

月度日期表是颗粒度为月的日期表,主要用来解决会计领域特有的第13个月问题,就实用性来讲价值不大,但却十分适合用来练手,所以和各位分享一下。日期表的制作非常像切蛋糕的过程,所以十分适合通过参数表来构造。以7月为第一个财政月为例,月度日期表有两种情况:

第一种情况是总共有13个财政月,但是普通[......]

阅读全文

标准日期表的制作与应用

标准日期表有着广泛的应用,下文将讲解其制作与应用。日期表的制作过程有点像切蛋糕,需要把特定的日子按照西历的逻辑划分到某个月和季度中,因此比较适合通过参数表来构建。接下来,会详细讲解各个参数(表)。

第一个和大家介绍的参数是Month_No, 这个List里面的元素由1到12组成。

[......]

阅读全文

角色培养问题

某游戏的角色强弱由武力,统率,智力,敏捷和运气这五个指标决定。该游戏会出现十三个特殊情景,每当进入这些情景玩家就会面临多个选择并需要从中挑选一个出来。根据游戏的攻略,每一个选项都会对某角色的武力,统率,智力,敏捷和运气产生不同程度的影响,具体的数据如下图所示:

现要求计算出每一个组合的路径[......]

阅读全文

订座问题

有如下表格,共有3列。第一列记录了座位的编号,第二列记录了该座位处在第几排,最后一列如果是1时表明该座位已经被预定否则为0时代表该座位处于无人订座的状态。有一团体现需要订10个座位,需要所有的座位处于同一排并且是连着的,现在要求你根据这个表格把所有符合条件的组合(排号,起始号和结束号)筛选出来,供该[......]

阅读全文

正则表达式(优化篇)

现有如下所示文档,其中的每一列(总共9列)算上前置的空白字符共有14个字符,现要求使用Power Query读取该文档并且把数据准确地分为9列。

这个问题的最优解是使用Csv.Document()的等宽分列功能,代码如下:

在没有发现以上方法之前,笔者曾向篮球大哥请教了如何使[......]

阅读全文

状态问题

现假设有一间公司,有四种产品供客户选择(产品型号为1,2,3和4),客户可以同时订阅四种产品中的任意一种或者多种且订阅期最短为一个月,但是不能重复订阅同一型号的产品。所有产品的状态可以划分为20种(1为最好,20为最差),并且所有产品的初始状态为1。产品的状态处于1到18时被认为处于正常区间,而处于[......]

阅读全文

汇总债券现金流

如下表格记录着公司持有的固定息票债券,现要求忽略公众假期,周末或者气象原因导致交收日期的不规则,根据日期参数表添加汇总现金流的计算列。

现在以上图中ISIN号为5的债券为例说明计算流程:

以下为完整的代码:

在DateList过程中,无视了公众假日,周末和气象因素带来[......]

阅读全文

向前分配数值

如下表格的每一行代表某个客户订阅的某种服务(服务类型可为A、B和C)在未来20期为公司带来的收入。现在需要根据参数表中Rate列代表的倍数放大这20期的数值,要求调整后的总额与调整前的一样。

现以图中第四行为例进行说明:

以下为实现这一过程的代码:

由于多处用到20[......]

阅读全文

第一次出现负数的列

有如下表格1,第二列到第十一列的名称为MB1,MB2,……,M10。现在需要在每一行中寻找出第一次出现负数的列并在计算列1stMB中显示出该列的名称,最终效果如表格2所示。

因为最终目的为添加计算列显示每一行中第一次出现负数的列名称,需要使用如下以Table.AddColumn()为主[......]

阅读全文