【问题标题】:Excel Place All Dates in a Range in CellsExcel将所有日期放在单元格的范围内
【发布时间】:2012-02-26 23:01:24
【问题描述】:

我不知道这是否适合问这个问题,但我看到其他人在这里问 Excel 问题。

如何让 Excel 将所有月份和年份放在两个日期范围之间。

例如我的日期范围是 2004 年 3 月 - 2008 年 12 月,所以 Excel 应该返回

March 2004
April 2004
May 2004
...
November 2008
December 2008

列中的每个单元格都应包含两个日期之间的所有月份/年份。

谢谢

【问题讨论】:

    标签: excel date excel-2011


    【解决方案1】:

    在 Windows Excel 2010 中,您只需在单元格中键入“2004 年 3 月”并根据需要向下拖动,它将按月递增。对我来说,它将格式更改为“Mar-2004”,但您可以使用自定义格式“mmmm yyyy”来格式化单元格以获得上面的确切格式。要进行自定义格式,只需右键单击带有日期的单元格...哦等等,您可以右键单击吗?因此,打开“设置单元格格式”对话框,选择“数字”选项卡,然后选择列表底部的“自定义”,然后在顶部附近的“类型”框中键入格式。

    或者你想要比这更自动化的东西吗?

    【讨论】:

      【解决方案2】:

      Doug 的解决方案无疑是获得一列月份的最简单方法。但是,如果您想要 VBA 解决方案,下面有一个。你没有说为什么你不能自己编写这样的例程。我认为编写例程代码比询问您不知道的内容更容易。询问你是否不明白这段代码在做什么。

      Option Explicit
      Sub TestDataRange()
      
        Call OutputDateRange("Sheet1", 2, 2, DateValue("1 Mar 2004"), _
                                             DateValue("1 Apr 2008"))
      
      End Sub
      Sub OutputDateRange(ByVal WShtName As String, ByVal RowTop As Long, _
                          ByVal Col As Long, ByVal DateFirst As Date, _
                          ByVal DateLast As Date)
      
        Dim DateCrnt As Date
      
        DateCrnt = DateFirst
      
        With Sheets(WShtName)
          Do While True
            With .Cells(RowTop, Col)
              .Value = DateCrnt
              .NumberFormat = "mmmm yyyy"
            End With
            DateCrnt = DateAdd("m", 1, DateCrnt)
            If DateCrnt > DateLast Then
              Exit Do
            End If
            RowTop = RowTop + 1
          Loop
        End With
      
      End Sub
      

      【讨论】:

      • 我只在 Mac 上做过一次 VBA,这只是一个测试,看看代码移植的难易程度。很多东西都奏效了,有些需要摆弄。
      • 对不起,我不明白对 Mac 的引用。
      • 因为问题被标记为 Excel 2011。
      • @Doug Glancy。我失去了一种微妙的感觉;我会记住它的未来。谢谢。
      猜你喜欢
      • 2014-07-10
      • 1970-01-01
      • 1970-01-01
      • 2013-12-24
      • 1970-01-01
      • 2018-04-13
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      相关资源
      最近更新 更多