如何使用WorksheetFunction.Text将日期从M / D / YY转换为YYYY-MM-DD?

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

此代码无效:

Dim FormattingValue As String
Dim FormattingResult As String

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

FormattingResult = WorksheetFunction.Text(FormattingValue,"YYYY-MM-DD")

Debug.Print FormattingResult

Debug.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
axstarmiao 回答:如何使用WorksheetFunction.Text将日期从M / D / YY转换为YYYY-MM-DD?

Select不返回值,因此无法按您预期的方式工作:

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

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

Debug.Print Format(WS1.Range("B7").Value,"YYYY-MM-DD")
本文链接:https://www.f2er.com/3162903.html

大家都在问