excel - VBA Cdate 解释 DD-MM-YYYY
问题描述
我有一列以 DD-MM-YYYY 格式存储的日期。我正在使用 VBA 的 cdate 函数循环它们以将它们转换为值 - 但是,当月份的日期为 12 或更小时,Cdate 将日期解释为 MM-DD-YYYY。最方便的方法是什么?
解决方案
我会使用这个DateSerial
函数。试试这个:
Sub ConvertDate()
Dim datecell As Variant, i As Long
With Workbooks("book1").Sheets(1)
For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
datecell = Split(.Range("A" & i), "/")
.Range("B" & i) = DateSerial(datecell(2), datecell(1), datecell(0))
Next i
End With
End Sub
这假设您的工作簿名为“Book1”并且日期值在 A 列中。结果将写入 B 列。
推荐阅读
- flutter - 为什么在删除 onTap 和 OtherCallBacks 后这个 Flutter 代码不起作用
- vue.js - 使用脚本 ('http://localhost/service-worker.js') 为范围 ('http://localhost/') 注册 ServiceWorker 失败
- java - 如何使用 jooq 获取按聚合值排序的组
- c - 如何在不使用#include的情况下清除C中的终端?
- javascript - 页面加载后如何使用 javascript 删除 404 src 错误?
- matplotlib-basemap - 无法导入/安装底图
- c++ - C++ 重载运算符未导出到 dll
- react-native - 我想用 react-native-youtube 在同一个屏幕上显示几个 youtube 视频
- c - 在构建任何函数之前,LLVM C API 构建全局 str 指针失败并出现分段错误
- java - 为什么 Java 不接受泛型隐含的返回类型?