You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

Excel/VBA中将星期月日年格式转为dd/mm/yy格式的简便方法

嗨,我来给你分享三种最简的转换方法,不管是用Excel自带功能、公式还是VBA都能快速搞定~

方法一:直接设置单元格格式(最快上手)

这种方法适合单元格内容已经是Excel可识别的日期格式(只是显示样式不对):

  • 选中需要转换的单元格区域
  • 右键点击选择「设置单元格格式」,或者直接按快捷键 Ctrl+1 打开格式窗口
  • 切换到「数字」选项卡,选择「自定义」分类
  • 在「类型」输入框里填写 dd/mm/yy,点击确定就完成了!

小提示:如果单元格左上角有绿色小三角,说明内容是纯文本格式,这种情况得先转成日期格式再用这个方法哦。

方法二:用公式转换文本格式日期

如果你的日期是纯文本(比如复制粘贴过来的非标准格式),可以用公式一键转换:
假设目标日期在A1单元格,在空白单元格输入:
=TEXT(DATEVALUE(A1),"dd/mm/yy")

  • 原理:DATEVALUE 函数会把文本格式的日期转换成Excel内部的日期序列号,TEXT 函数再把它格式化成你需要的 dd/mm/yy 样式。
  • 要是需要批量转换,直接下拉公式就行。
方法三:VBA批量处理(适合大量数据)

如果要处理成百上千行的数据,写个简单的VBA宏能节省不少时间:

  1. Alt+F11 打开VBA编辑器
  2. 右键点击左侧的工作簿名称,选择「插入」→「模块」
  3. 粘贴下面的代码:
Sub ConvertToDDMMYY()
    Dim targetRange As Range
    Dim cell As Range
    
    ' 这里可以直接指定范围,比如 Set targetRange = Range("A1:A1000")
    Set targetRange = Application.Selection
    
    For Each cell In targetRange
        ' 先判断是否是可识别的日期,文本格式的话先转换
        If IsDate(cell.Value) Then
            cell.NumberFormat = "dd/mm/yy"
        Else
            On Error Resume Next ' 跳过无法转换的无效日期
            cell.Value = DateValue(cell.Value)
            cell.NumberFormat = "dd/mm/yy"
            On Error GoTo 0
        End If
    Next cell
End Sub
  1. 回到Excel,选中要处理的单元格区域,按 Alt+F8 选择 ConvertToDDMMYY 宏运行即可。

内容的提问来源于stack exchange,提问作者WayneP

火山引擎 最新活动