Power Query:用文本构建日期

时间:2016-11-30 19:13:49

标签: excel powerquery

我们的Ticketsystem给了我很好的报告,不幸的是它们是愚蠢的格式。 在每月概述中,我将日期列显示为:

Mon 1 
Tue 2 
Wed 3 
... 
Sat 31

我想用这个缺点建立一个合适的约会。 我的想法是:

  1. 按分隔符(左起第一个空格)拆分列,为我提供Columns Date.1和Date.2
  2. Concatenate Date.2& “” &安培; “当月 - 1”& “” &安培; “今年”
  3. 将其格式化为日期
  4. 到目前为止这是正确的吗?如果是这样: 我知道如何获得超出约会的月份,但我如何获得“currentmonth - 1”(即上个月的数字)和当前年份?

    由于

3 个答案:

答案 0 :(得分:1)

您可以设置日期格式,然后使用Date.AddMonths添加自定义列。如果您的日期列位于[Date],则您要添加的自定义公式为Date.AddMonths([Date], -1)

如果您想要当前年份(本地),可以使用Date.Year(DateTime.FixedLocalNow))。但是,从此建立日期是有问题的,因为该表将根据您查看报告的时间而更改。

答案 1 :(得分:1)

知道了:

Date.Month(Date.AddMonths(DateTime.FixedLocalNow(), -1))

答案 2 :(得分:0)

我会这样做:

// Memory-mapped peripheral
#define STATUS_REG_ADDR 0x12345678 // 32-bit status register
#define DATA_REG_ADDR   0x1234567C // 32-bit data register

// Status register bits
#define BUSY_BIT_MASK 0x00000080   // Busy bit == '1' while peripheral busy

uint32_t get_value()
{ 
    while (((*(uint32_t*)STATUS_REG_ADDR) & BUSY_BIT_MASK) == 1)
        ;

    return *(uint32_t*)DATA_REG_ADDR;
}

但是如果[日期]日存在于prev中,您还必须添加支票。一个月,因为例如在3月28日,您将收到错误。