博客
关于我
Excel 2010 VBA 入门 054 Format函数对日期格式化
阅读量:217 次
发布时间:2019-02-28

本文共 2278 字,大约阅读时间需要 7 分钟。

VBA批量转换合同签订日期为英文日期

以下是实现将合同签订日期转换为英文日期的VBA代码示例

Option ExplicitSub 转换英文日期()    Dim RowN As Long    Dim dDate As Date    For RowN = 2 To Cells(Rows.Count, "A").End(xlUp).Row        dDate = Cells(RowN, "B").Value        Cells(RowN, "C").Value = "'" & CStr(Format(dDate, "d MMM YYYY"))        Cells(RowN, "D").Value = "'" & CStr(Format(dDate, "d MMMM YYYY"))                Select Case Day(dDate)            Case 1, 31                Cells(RowN, "E").Value = Format(dDate, "d"""st"" MMMM,YYYY")            Case 2                Cells(RowN, "E").Value = Format(dDate, "d"""nd"" MMMM,YYYY")            Case 3                Cells(RowN, "E").Value = Format(dDate, "d"""rd"" MMMM,YYYY")            Case Else                Cells(RowN, "E").Value = Format(dDate, "d"""th"" MMMM,YYYY")        End Select    NextEnd Sub

Format函数格式化日期

Format函数用于对日期进行格式化,常用的日期格式包括:

  • d MMM YYYY:天数名称,月份简称,四位年份
  • d MMMM YYYY:天数名称,月份全名,四位年份
  • d"st" MMMM,YYYY:天数序数词,月份全名,四位年份
  • d"nd" MMMM,YYYY:天数序数词(如2nd),月份全名,四位年份
  • d"rd" MMMM,YYYY:天数序数词(如3rd),月份全名,四位年份
  • d"th" MMMM,YYYY:天数序数词(如4th),月份全名,四位年份

Select Case语句处理序数词

在本代码中,Select Case语句用于根据日期的天数判断,格式化为带序数词的英文日期。具体实现如下:

  • Case 1, 31:天数为1或31,格式化为"1st"、"31st"
  • Case 2:天数为2,格式化为"2nd"
  • Case 3:天数为3,格式化为"3rd"
  • Case Else:其他天数,格式化为带序数词的天数(如4th)

DatePart函数获取日期信息

DatePart函数可用于提取日期信息,常见用途包括:

  • 获取完整年份:DatePart("yyyy", Date)
  • 获取季度:DatePart("q", Date)
  • 获取月份:DatePart("m", Date)
  • 获取天数:DatePart("d", Date)
  • 获取小时、分钟、秒:DatePart("h", Date)、DatePart("m", Date)、DatePart("s", Date)

示例输出

以下是转换后的示例输出:| 姓名 | 合同签订日期 | English Date 1 | English Date 2 | English Date 3 | English Date 4 ||------------|--------------|-----------------------|-----------------------|-----------------------|-----------------------||辛劭钧 |2010/1/1 |1 Jan 2010 |1 January 2010 |1st Jan,2010 |1st of January,2010 ||林庆荣 |2009/10/2 | | | | ||许亚瑾 |2010/1/11 | | | | ||施佳翔 |2007/12/21 | | | | ||钟皓宇 |2010/7/31 | | | | ||李志仁 |2008/1/22 | | | | ||杨婉伶 |2008/1/5 | | | | ||林艺芳 |2008/1/5 | | | | ||陈俐宁 |2009/11/15 | | | | ||李冠霆 |2009/12/8 | | | | ||吕柏贤 |2010/6/22 | | | | ||杜金佳 |2010/1/14 | | | | ||林映君 |2009/11/15 | | | | ||陈伯伦 |2010/1/14 | | | | ||柯雅文 |2010/5/9 | | | | ||陈韦志 |2010/6/5 | | | | |

注意事项

  • 该代码基于Excel VBA编写,假设数据位于表单A列,合同签订日期位于表单B列
  • Format函数的格式化结果可能因Excel版本或语言设置有所不同
  • Select Case语句中的序数词格式化规则可根据实际需求进行调整
  • 若需要支持更多日期格式,可在代码中添加更多Case语句
  • 转载地址:http://lywi.baihongyu.com/

    你可能感兴趣的文章
    python与flask_Python编程中flask的简介与简单使用
    查看>>
    python与图灵机器人交互(WXPY版本)
    查看>>
    python与运算符_python运算符
    查看>>
    python两个列表获取交集,并集,差集
    查看>>
    python两个字典合并,两个list合并
    查看>>
    Python两个版本共存时,命令行升级pip
    查看>>
    Python两个版本共存时,怎么验证是否安装成功 scrapy
    查看>>
    Python两个版本共存时,通过pip安装Scrapy
    查看>>
    python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
    查看>>
    Python中 pass语句的作用
    查看>>
    python中 urllib, urllib2, httplib, httplib2 几个库的区别
    查看>>
    python中 yaml库 & json库 & xmltodict库使用
    查看>>
    python中 将你的名字转化成为二进制并输出
    查看>>
    Python中*args 和**kwargs的用法
    查看>>
    Python中*args 和**kwargs的用法
    查看>>
    Python中*args和**kwargs的使用
    查看>>
    python中0、1、True、False、if条件
    查看>>
    python中argparse模块关于 parse_args() 函数详解(全)
    查看>>
    python中base64编码与解码
    查看>>
    python中break怎么用_详解Python中break语句的用法
    查看>>