1

我对 VBA 中的日期复制/粘贴有一个小问题。我想将以 dd/mm/yyyy 格式显示的日期转换为文本。我的 Excel 有英文的原始设置。

我试过了:

Selection.NumberFormat = "@"

但它以 mm/dd/yyyy 格式返回文本。有谁知道如何保持 dd/mm/yyyy 格式?我试图更改我的范围的“区域设置”参数,但它不起作用。

非常感谢,文森特

4

2 回答 2

0

我刚看到一个类似的问题....您可以格式化您的日期,

Format(urdate_intext, "dd/mm/yyyy")

Excel 根据您计算机中的区域设置执行此操作。如果您想更改区域设置,请查看以下内容:Excel Date Format changed after running code

嘿顺便说一句,你不必选择一个范围来使用它。:) 将范围设置为范围对象。

于 2013-01-09T10:07:29.247 回答
0

Range 对象中有一个名为“Text”的属性。它获取电子表格中可见的内容。然后,您可以将其存储在字符串变量中并将其粘贴到先前格式化为文本的单元格中(可能是循环中的相同单元格)。这样你就可以:

Dim tt as string
tt = ActiveCell.Text
Selection.NumberFormat = "@"
Selection.Value = tt

您可能只在日期 <13 的日期使用了另一个解决方案,因为它将一天作为月份。

于 2015-10-20T12:39:47.303 回答