从今天开始创建历史日期列表 - 每月跳转

时间:2016-01-13 08:57:45

标签: excel excel-vba excel-formula vba

我希望创建一组日期如下。

例如,如果今天的日期是2016年1月12日。

我需要:

 A

2016年1月1日

2015年12月2日

2015年11月3日

2015年10月4日

2015年9月5日

2015年8月6日

等等。

我很感激能得到的所有帮助。谢谢。

3 个答案:

答案 0 :(得分:1)

如果您在单元格12 Jan 2016中获得A1,则可以在单元格A2中使用以下公式,并根据需要向下拖动公式。

=EDATE(A1,-1)

这将继续为您提供上一个减1个月的日期。

然后,您可以将单元格值格式化为mmmm yyyy,这将为您提供所需的日期格式。

答案 1 :(得分:1)

此代码将遍历从A1到A100的单元格,并用当前月份和年份填充它们,对于每个单元格,它将减去一个月:

Sub test()


MyMonth = Date


For i = 1 To 100

    Range("A" & i).Value = MyMonth
    Range("A" & i).NumberFormat = "[$-406]mmmm yyyy;@"
    MyMonth = DateAdd("m", -1, MyMonth)

Next i


End Sub

答案 2 :(得分:0)

2016年1月写在A10。向上拖动单元格A10。用月填充系列(自动填充选项)。使用值将此结果复制粘贴到其他单元格中。