如何使用WorksheetFunction.将日期从年月日转换为YYYY-MM-DD的文本



我的工作表单元格B7中有一个日期,格式为9/1/2019,我想将其转换为YYYY-MM-DD或2019-09-01格式的文本字符串。我试着使用WorksheetFunction。文本并在网上搜索示例,但我的代码只是生成了一个"True"结果,而不是重新格式化的日期。

此代码不起作用:

Dim FormattingValue As String
Dim FormattingResult As String
FormattingValue = WS1.Range("B7").Select
FormattingResult = WorksheetFunction.Text(FormattingValue, "YYYY-MM-DD")
Debug.Print FormattingResult

调试。Print返回值"True",而不是YYYY-MM-DD格式的日期。

The code below does work thanks to the contributors:  
Dim FormattingResult As String 
FormattingResult = Format(WS1.Range("B7").Value, "YYYY-MM-DD")  
Debug.Print FormattingResult  
This successfully converted 11/5/19 to 2019-11-05

Select不会返回值,因此这不会像您预期的那样工作:

FormattingValue = WS1.Range("B7").Select

在VBA中,您可以使用canFormat(),并且无需选择任何内容:

Debug.Print Format(WS1.Range("B7").Value, "YYYY-MM-DD")

最新更新