【发布时间】:2013-12-18 08:04:25
【问题描述】:
我在一列中有一个日期列表。我想将这些日期的唯一年份添加到用户窗体上的组合框。
用户表单用于根据用户选择的月份和年份生成报告。我只想要有条目的年份。所以当它进入 2014 年时,当第一个条目进入 2014 年的电子表格时,报告生成器可以选择。
Dim c As Range, Coll As New Collection
On Error Resume Next
For Each c In Sheets("Permits & Access").Range(ActiveSheet.Range("L3"), Sheet.Range ("L3").End(xlDown))
Coll.Add c.Value, c.Value
Next c
On Error GoTo 0
For Each Item In Coll
cboYear.AddItem Item
Next Item
这是我用来显示唯一日期的代码 sn-p。但我实际上只需要独特的岁月。我知道使用 Year() 方法来提取年份,只是没有任何运气来实现它。
【问题讨论】:
-
也许你可以把
Coll.Add c.Value, c.Value改成Coll.Add Format(c, "yyyy"), Format(c, "yyyy")?或者如果您愿意接受其他方法,我发布了一个答案。 -
我只是在尝试使用字典的解决方案。只需重新调整它以使用我需要它查看的范围。在这样做的同时,我看到了您的第二条评论并迅速尝试了一下,但它没有返回任何内容。我想知道这是否是因为它将值作为字符串值而不是日期值读取?