首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Excel中使用VBA从日期提取连续且唯一的年份列表

,可以通过以下步骤实现:

  1. 创建一个新的Excel工作表,并在其中输入日期数据。
  2. 打开Visual Basic for Applications(VBA)编辑器,可以通过按下Alt + F11快捷键来打开。
  3. 在VBA编辑器中,插入一个新的模块。可以通过点击“插入”菜单,然后选择“模块”来实现。
  4. 在新的模块中,编写以下VBA代码:
代码语言:txt
复制
Sub ExtractUniqueYears()
    Dim rng As Range
    Dim cell As Range
    Dim years As Collection
    
    ' 设置日期范围
    Set rng = Range("A1:A10") ' 将范围更改为实际的日期范围
    
    ' 创建一个集合来存储唯一的年份
    Set years = New Collection
    
    ' 遍历日期范围并提取年份
    On Error Resume Next
    For Each cell In rng
        years.Add Year(cell.Value), CStr(Year(cell.Value))
    Next cell
    On Error GoTo 0
    
    ' 将唯一的年份列表输出到新的列中
    For i = 1 To years.Count
        Cells(i, 2).Value = years(i)
    Next i
End Sub
  1. 在代码中,将Range("A1:A10")更改为实际包含日期的单元格范围。如果日期位于不同的单元格范围,请相应地更改代码。
  2. 运行宏。可以通过按下F5键或点击“运行”菜单中的“运行子过程”来运行宏。
  3. 运行后,将在选定的单元格范围旁边的新列中提取出连续且唯一的年份列表。

这是一个简单的VBA代码示例,用于从日期中提取唯一的年份列表。根据实际需求,可以根据这个示例进行修改和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Excel公式练习44: 多列返回唯一按字母顺序排列列表

本次练习是:如下图1所示,单元格区域A2:E5包含一系列值和空单元格,其中有重复值,要求该单元格区域中生成按字母顺序排列不重复值列表,如图1G列所示。 ?...图1 单元格G1编写一个公式,下拉生成所要求列表。 先不看答案,自已动手试一试。...单元格H1公式比较直接,是一个获取列表区域唯一值数量标准公式: =SUMPRODUCT((Range1"")/COUNTIF(Range1,Range1&"")) 转换为: =SUMPRODUCT...:上述数组中非零值位置表示该区域内每个不同值该数组首次出现,因此提供了一种仅返回唯一方法。...统计列表区域中唯一值数量。 2. 将二维区域转换成一维区域。 3. 强制INDEX返回数组。 4. 确定字母排序。 5. 提取唯一值并按字母排序。

4.2K31

Excel常用函数

1、指定数值求和 =SUM(10,20,30) 2、指定单元格求和:输入=sum(),括号中间按住ctrl连续点击即可选择需要求和数据 =SUM(C5,C9,C3) 3、也可以将指定单元格直接相加...1(星期一)到 7(星期日)表示一周第几天 (4) 4 =WEEKDAY(A2, 3) 使用数字 0(星期一)到 6(星期日)表示一周第几天 (3) 3 18、日期函数 DATE() 返回表示特定日期连续序列号...*year* 参数值可以包含一到四位数字。Excel 将根据计算机正在使用日期系统来解释 *year* 参数。...如果 *year* 小于 0 或大于等于 10000,则 Excel 返回 错误值 #NUM!。 Month 必需。一个正整数或负整数,表示一年 1 月至 12 月(一月到十二月)各个月。...注意: Excel 可将日期存储为连续序列号,以便能在计算中使用它们。

3.6K40

Power BI创建日期几种方式概览

但这种方式还是存在明显缺点,一方面如果日期列有两个及以上分散不同table,无法使用一对多关系来管理这些数据,更何况如果一个table中出现两个时间列(如订单日期和发货日期等)时就无法处理;另一方面...今天给大家介绍三个创建Power BI日期途径,分别对应着一种语言,ExcelVBA语言,适用于Power BI和PowerPivotDAX语言,适用于Power BI和PowerQuery...第一种是VBA语言: 直接用excelvba语言编写,通过添加简单按钮可以实现一键创建日期表,并灵活修改起止日期。...,日期开始年份1月1日起。"...1.VBA语言最大好处是只需要修改原始文件,无需重新发布新报表,缺点是需要用到另一门语言; 2.DAX是最灵活,也是日常都在用用CALENDARAUTO函数可以自动识别模型最大最小日期

6.2K21

VBA还能活多久?——完美Excel第169周小结

Excel 5推出第一个版本起,VBA存在将近30年。无论你是否学习过编程,这都是一种非常容易学习编程语言,并且能够快速应用到具体工作场景。 为什么学VBA?...当然,最实用快捷是能够方便地进行数据分析、快速搭建满足自已需要个性化平台。 3.Excel是世界上最流行使用最广泛电子表格应用软件,有许多基于Excel使用VBA开发产品。...因为正是VBA,让Excel与众不同,也让更多的人选择了Excel,已经有大量VBA开发者Excel开发人员也都非常喜欢使用VBA,也有大量正在使用VBA开发Excel应用程序和加载项。...使用JavaScript,可以编写在任何设备上运行脚本程序。此外,JavaScript外部源提取数据速度很快。 OK!这个话题到此为止。上面的内容大多来自网上一些专家看法,也有我一些拙见。...(续) Excel小技巧45:2个工作表操作习惯,利已也利他 Excel公式技巧45:按出现频率依次提取列表数据 Excel小技巧46:单元格输入连续数字6种方法 资源分享:电子地图下载与拼接器

4.5K40

简单Excel VBA编程问题解答——完美Excel第183周小结

End If块某些VBA语句总会执行吗? 不一定,除非还有Else子句。条件为False时,If … End If语句内语句不会被执行。...17.VBA可以识别通用格式日期,例如2020/11/11。VBA代码,如何表明该值是日期? 通过将其括#字符。 18.哪个VBA函数用于为日期添加间隔? DateAdd函数。...22.如何字符串开头提取一定数量字符? 使用Left函数。 23.VBA程序中使用哪个Excel对象引用工作表单元格区域? Range对象。...完美Excel微信公众号本周内容 完美Excel公众号,本周推出内容清单如下: 一些基本Excel VBA编程问题,答案来了 Excel小技巧66:快速求和 Excel实战技巧92:快速获取指定目录下所有文件清单...Excel公式技巧64:为重复值构造包含唯一辅助列 Excel小技巧67:列出工作表中所有定义名称 完美Excel社群本周内容 本周完美Excel社群内容更新不是很多,仍然是《Excel编程周末速成班

6.6K20

用ChatGPT处理Excel问题,效率狂升

作为一名资深打工者,平时工作 Word、PPT、Excel 等必不可少,要是能将 ChatGPT 整合进这些应用软件简直不要太开心。这方面微软已经紧锣密鼓进行了。...而 Word,Excel、PPT 这办公三大件,当属 Excel 最难搞,想要熟练掌握它,需要记住很多公式。但是使用提示就简单多了,和 ChatGPT 聊聊天就能解决问题。...使用 Excel 时,我们常常会利用其自带计算函数,包括数据库函数、日期与时间函数、统计函数等。...有时,我们对一个 Excel 表格有多个问题,这时我们也可以对 ChatGPT 连续提问。例如对于上面的收入支出数据表,想知道 1. 月支出超过 100000 美元次数;2....SUMPRODUCT (1/COUNTIF (B2:B9, B2:B9)) 使用 ChatGPT 创建宏 接下来让我们尝试使用 VBA 创建一个简单宏,按 tab 名对 sheet 进行排序。

1.1K10

用ChatGPT处理Excel问题,效率狂升

作为一名资深打工者,平时工作 Word、PPT、Excel 等必不可少,要是能将 ChatGPT 整合进这些应用软件简直不要太开心。这方面微软已经紧锣密鼓进行了。...而 Word,Excel、PPT 这办公三大件,当属 Excel 最难搞,想要熟练掌握它,需要记住很多公式。但是使用提示就简单多了,和 ChatGPT 聊聊天就能解决问题。...使用 Excel 时,我们常常会利用其自带计算函数,包括数据库函数、日期与时间函数、统计函数等。...有时,我们对一个 Excel 表格有多个问题,这时我们也可以对 ChatGPT 连续提问。例如对于上面的收入支出数据表,想知道 1. 月支出超过 100000 美元次数;2....=SUMPRODUCT (1/COUNTIF (B2:B9, B2:B9)) 使用 ChatGPT 创建宏 接下来让我们尝试使用 VBA 创建一个简单宏,按 tab 名对 sheet 进行排序。

1.6K60

在数据框架创建计算列

标签:Python与Excel,pandas Excel,我们可以通过先在单元格编写公式,然后向下拖动列来创建计算列。PowerQuery,还可以添加“自定义列”并输入公式。...Python,我们创建计算列方式与PQ中非常相似,创建一列,计算将应用于这整个列,而不是像Excel“下拉”方法那样逐行进行。要创建计算列,步骤一般是:先创建列,然后为其指定计算。...图1 pandas创建计算列关键 如果有ExcelVBA使用背景,那么一定很想遍历列中所有内容,这意味着我们一个单元格创建公式,然后向下拖动。然而,这不是Python工作方式。...图2 数据框架日期时间操作 为便于演示,我们使用下面网站数据: http://fund.eastmoney.com/company/default.html 图3 我们要计算基金公司成立年数...由于今年是2021年,我们将用它来估算公司年龄,2021年减去每个“成立年份”。

3.8K20

示例讲字典(Dictionary):获取唯一

标签:VBA,Dictionary 字典(Dictionary)是一种通过键(key)和项(item)(注:键和项是字典术语)存储唯一方法。...它是一种基于唯一键存储数据极好工具,它强大之处在于可以使用键来存储和合并数据。 本文中,讲解如何在字典捕获一个单元格区域并将其引用回Excel。...这里,将存储一个10行单元格区域,然后只输出该区域中唯一项目。 示例如下图1所示。获取其数据区域,使用字典将数据存储,然后使用VBA数组提取我们选择需要获取唯一列。...图2 下面的VBA代码数据单元格区域中生成唯一数据。它将从数组的当前区域获取数据,并将数据汇总到一个唯一列表,输出到所选择单元格区域内。....Item(ar(i, 1)) = .Item(ar(i, 1)) + ar(i, 3) 当循环完成后,所要做就是将数据字典中提取到想要位置。

4.8K50

精通数组公式16:基于条件提取数据

excelperfect Excel,基于AND或OR条件数据集中提取数据是经常要做事。...要减小计算时间,考虑使用辅助列、布尔逻辑构造和有效函数。 5.这里没有考虑使用VBA解决方案,有时使用它们是自动执行数据提取好方法。 为何提取数据公式如此复杂?...当表中提取数据时,实际上是执行查找。Excel,标准查找函数例如INDEX、MATCH、VLOOKUP等都非常好,但当存在重复值时就比较困难了。...,使用INDEX和MATCH函数仅提取部分列数据 如下图7所示,使用AND和OR条件辅助列,只日期和商品数列中提取数据。...图7:AND和OR条件,双向查找日期和商品数列获取数据 未完待续>>> 注:本文为电子书《精通Excel数组公式(学习笔记版)》一部分内容节选。

4.3K20

Excel公式练习93:计算1900年前日期

引言:本文练习整理自chandoo.org。多一些练习,想想自己怎么解决问题,看看别人又是怎解决,能够快速提高Excel公式编写水平。 本次练习是:给1900年前日期加上或者减去一定天数。...示例数据如下图1所示,列A日期,加上或减去列B天数,返回正确日期。 图1 假设所有的日期使用mm/dd/yyyy格式,并且都大于0年。...不应该使用任何辅助单元格、中间公式、命名区域或者VBA。 写下你公式。...解决方案 公式1: 单元格C2输入公式: =REPLACE(TEXT(DATE(MID(A2,7,4)+2000,MID(A2,1,2)+0,MID(A2,4,2)+0)+B2,"MM/DD/YYYY...公式: DATE(MID(A2,7,4)+2000,MID(A2,1,2)+0,MID(A2,4,2)+0) 得到年份、月份和日,年份加上2000以满足Excel表示日期要求。

1.5K20

《Python for Excel》读书笔记连载17:使用读写器包进行Excel文件操作(上)

每个包使用不同语法(通常与原始Excel对象模型有很大差异)这一事实并没有使它变得更容易——在下一章详细介绍Excel对象模型。这意味着可能需要查找大量命令,即使是经验丰富VBA开发人员。...OpenPyXL OpenPyXL是本节唯一一个既可以读取又可以写入Excel文件包,甚至可以使用它编辑Excel文件,尽管只是简单文件。...首先,需要从Anaconda提示符上现有Excel文件中提取宏代码(示例使用macro.xlsm文件,可以配套文件xl文件夹中找到该文件): 对于Windows,首先切换到xl目录,然后找到vba_extract.py...你可以根据你实际情况作相应调整) 这将保存文件vbaProject.bin到运行命令目录,也包括了配套文件xl文件夹提取文件。...但它目前也无法通过Conda获得,因此使用pip进行安装: pip install pyxlsb 读取工作表和单元格值如下: pyxlsb目前无法识别带有日期单元格,因此必须手动将日期格式单元格值转换为

3.8K20

精选100个Pandas函数

描述统计信息 duplicated() 判断是否有重复元素 drop_duplicates() #删除重复值 dropna() # 删除缺失值 diff() 一阶差分 dt.date() 提取日期...dt.time() 提取时间 dt.year() 提取年份 dt.month() 提取年份 dt.day() 提取天/日 dt.hour() 提取小时 dt.minute()...() # 哑变量 h hist() 绘制直方图 hasnans() 判断元素是否存在缺失值;返回是True或者False i isnull() # 判断序列元素是否为缺失值,返回bool...replace() 替换值(不能使用正则) str.replace() 值替换(可使用正则) round() 四舍五入 read_csv() # 读取csv文件 read_excel()...transpose .T # 转置 u unique() 元素唯一值(去重) unstack # 不要堆叠,多行转列 v var() 计算方差 value_counts() # 统计每个元素

22930

Excel应用实践03:使用Excel进行个人计划执行记录与统计分析

图1 列G使用了“数据验证”功能(即原来“数据有效性”),可以直接在列表中选择分类,如下图2所示。 ? 图2 “数据验证”设置如下图3所示。 ?...图4 图4,单元格C4是统计起始日期,命名为startDate;单元格D4是统计结束日期,命名为endDate,这是我们在这个工作表唯一要输入两个数值。...输入日期后,单击其右侧“更新”按钮,自动统计这两个日期之间相应数据。该按钮关联了下文所讲用于实现自动统计VBA程序。...单元格区域C7:D21是输出区域,通过VBA程序自动生成各分类上花费时间和做次数。 单元格区域B7:B21除作为上文介绍分类下拉列表项来源外,还设置了条件格式,如下图5所示。...当统计次数不符合要求时,相应分类字体会显示红色。 ? 图5 VBA代码使用了高级筛选功能。

1.8K20

个人永久性免费-Excel催化剂功能第34波-提取中国身份证信息、农历日期转换相关功能

内容为关于身份证信息提取和关于日期相关农历、公历额外信息。...身份证相关函数 1、身份证号15位转18位 2、提取身份证入户地区信息,最详细可达省市区信息 3、提取身份证出生日期 4、提取身份证出生日期后,计算当前年龄,未过生日不算一年 5、提取身份证出生日期后...,计算当年干支年 6、提取身份证性别信息 7、提取身份证出生日期后,计算所属生肖 8、提取身份证出生日期后,计算所属星座 ?...身份证相关函数 日期相关函数 1、获取当前年龄或工龄计算 2、农历日期转公历日期 3、公历日期转农历日期 4、根据公历日期算农历24节气 5、根据年份和24节气名称,计算当年节气所在日期 6、根据公历日期计算干支年份...,重新定义Excel函数学习和使用方法 第5波-使用DAX查询PowerbiDeskTop获取数据源 第6波-导出PowerbiDesktop模型数据字典 第7波-智能选区功能 第8波-快速可视化数据

1.6K40

一步一步教你制作销售业绩分析报告

1、使用Excel文件创建日期表   新建Excel文件,Excel工作表手动填写相应日期字段(注意:第一列日期列是必须列,其他日期字段大家可以按需求添加即可) ?   ...PowerBI中会自动识别业务数据涉及日期范围生成日期表。本文中业务数据日期范围2018-1-1到2019-12-31所有日期。当然我们还需要添加日期列,如年份,月份等。...操作和Excel操作方式相同,用Year函数创建年份,用Month函数创建月份即可,这里就不做展现了大家可以看销售目标公式参考。创建完成后将该表标记为日期表。 ?   ...使用M函数List.Dates可以创建指定起始日期和天数日期表。这种方式不需要使用公式,直接在功能列表操作提取年份,季度,月份等字段。...2、制作KPI图表业绩完成率 KPI图表可以应用商店进行下载图表控件 ? 我们要处理是KPI指标,搜索框输入KPI。

5.2K21

Excel实战技巧67:组合框添加不重复值(使用ADO技巧)

很多情况下,我们需要使用工作表数据来填充组合框,但往往这些数据中含有许多重复值。如何去除重复值并得到唯一值,这是一个永恒的话题,大家也会用到各式各样方法得到结果。...本文讲解一种技巧,使用Recordset(记录集)来获取唯一值并将其填充到组合框。 示例数据如下图1所示。工作表中有一个组合框,需要包含列A省份列表,但是列A中有很多重复省份数据。 ?...图1 这里可以使用简单记录集快速提取不同省份名并将其装载到组合框。...单击功能区“开发工具”选项卡“插入”按钮下ActiveX控件“组合框”,工作表插入一个组合框,可以看到Excel将其自动命名为“ComboBox1”,如下图2所示。 ?...然而,上面的方法更容易,并且使用记录集允许装载记录集中快速调整查询来捕获另一个字段或者创建另一个组合框。

5.5K10

Python~Pandas 小白避坑之常用笔记

、loc、iloc使用 1.根据列名提取数据 import pandas as pd sheet1 = pd.read_excel(io='非洲通讯产品销售数据.xlsx', sheet_name=...[:5]) # 二维列表 2.loc数据提取 import pandas as pd sheet1 = pd.read_excel(io='非洲通讯产品销售数据.xlsx', sheet_name...# sheet1['年度'] = sheet1['日期'].dt.year # 根据日期字段 新增年份列 # sheet1['季度'] = sheet1['日期'].dt.quarter # 根据日期字段...提取前5行, 日期、国家列 sheet1.to_csv(path_or_buf='test.csv') ---- 总结 以上就是今天要讲内容,本文仅仅简单介绍了pandas使用,而pandas提供了大量能使我们快速便捷地处理数据函数和方法...,续有常用pandas函数会在这篇博客持续更新。

3.1K30

EXCEL日期数据录入技巧,使用日期下拉菜单

EXCEL数据录入当中,有大量日期输入时候,单靠手工输入,有时也比较麻烦。有没有一个时间选择,让日期数据录入工作变得简单。...使用VBA可以达到这一目的,但是对于像我这样没有VBA基础,也还是比较麻烦。下面介绍一个使用控件方法达到这一个目的。不需要VBA知识。下面,介绍下日期选择两种方法。...完成后选择需要录入日期单元格,点击菜单上“数据“选项卡"数据工具”,点击“数据验证” + “数据验证”允许选择“序列”,来源选择建立日期列表日期数据列表范围 完成后,日期输入列表中就会形成一个日期选择下拉列表...利用漂亮日期控件来输入日期 下面介绍实用控件来进行日期录入,使用Excel Date Picker插件(samradapps_datepicker.xlam),可以到网上搜索下载 把下载和解压缩后得到...“加载宏”界面,点击“浏览”,选择刚才拷贝文件,点击确定,完成相关日期插件加载。

3.4K20
领券