用于保存设置的日期值函数未提供正确的格式?

问题描述 投票:0回答:1

我正在尝试将Savesetting字符串值转换为以\分隔的日期值。当我通过datevalue函数将其转换时,它给了我12:00:00AM而不是保存在先前模块中的03.30.20的输入日期。

这是我的代码:

Option Explicit
Dim strfiledate As String
Sub edits_formatting()
    Dim wbk As Workbook: Set wbk = ThisWorkbook
    Dim wsInputs As Worksheet: Set wsInputs = wbk.Sheets("Inputs")
    strfiledate = GetSetting("'HR_METRICS_TEMPLATE_v3.xlsm'", "Update_New_Data", "FileDate")
    Application.Calculation = xlCalculationAutomatic
    Dim filedate As Date
    filedate = DateValue(GetSetting("'HR_METRICS_TEMPLATE_v3.xlsm'", "Update_New_Data", "FileDate"))
    wsInputs.Range("B1").Value = filedate
    wsInputs.Range("B1") = Format(filedate, "m/d/yyyy")

我缺少什么吗?

excel vba
1个回答
0
投票

正如您所经历的,DateValue("03.03.20")返回12:00:00 AM

[Replace在调用.之前带句号/的句点DateValue

Dim temp
temp = GetSetting("'HR_METRICS_TEMPLATE_v3.xlsm'", "Update_New_Data", "FileDate")
temp = Replace(temp, ".", "/")
filedate = DateValue(temp)
© www.soinside.com 2019 - 2024. All rights reserved.