vba - Excel VBA将字符串日期转换为真实日期

标签 vba excel excel-2010 excel-2007

我正在使用以下代码,但由于某种原因,第二行没有将其转换为真实日期。

DateStr = Replace(DateStr, "-", "/")
DateStr = Format(CDate(DateStr), "dd/mm/yyyy")
DateStr = DateStr + 1

即使我这样做:
Dim RealDate As Date

DateStr = Replace(DateStr, "-", "/")
RealDate = Format(CDate(DateStr), "dd/mm/yyyy")
RealDate = RealDate + 1

正如您从第 3 行看到的那样,我正在尝试 +1 到一天,这也可能改变月份或年份。

最佳答案

您无法确定应该在日期中添加 1 的位置。尝试,

DateStr = Format(CDate(DateStr) + 1, "dd/mm/yyyy")

CDate conversion function是您获得数字日期值的地方,它将接受另一天的添加。

关于vba - Excel VBA将字符串日期转换为真实日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31528334/

相关文章:

excel - 实现更改事件以检查文本框值的更改并启用 "apply"按钮

vba - 在 Excel 中的特定字符之后删除或添加文本

performance - 提高 VBA 中的循环效率

vb.net - VS 2013 和 Excel 2010 中的 Visual Basic : cannot find xlQualityStandard (is not declared)

vba - 如何使用 Excel VBA 2010 创建具有两个数据集的图表

excel - 禁用删除工作表

sql - 通过 SQL UPDATE 更新 Excel 数据

excel - 将 Autocad/Maps 中的 block 导入 Excel

c++ - 运行时检查失败 #0 - ESP 的值未正确保存

mysql - Excel 字符串中的多个单词替换