早上好,
我今天写的是为了看看这里的任何VBA向导是否可以帮助我使用VBA正确地在Excel中格式化日期。我已经看过其他解决方案了,但它并没有很大帮助。
我正在使用VBA从页面中获取一个条目,然后将其正确格式化,然后实际将其编辑为我将拥有的SQL字符串将进入Oracle数据库。因此我需要日期在:
DD-mmm-YYYY,有点像" 2017年10月17日"使用今天的日期。我当前的代码如下所示:
Range("A1").Select
Selection.NumberFormat = "d-mmm-yyyy"
date= UserSheet1.Cells(1, 1)
在单元格中,它看起来是正确的,但是当我引用" date"在我的代码中变量,它显示为10/17/2017。有人可以帮忙吗?
提前感谢您的时间
答案 0 :(得分:2)
请勿使用.Select
,这会降低代码速度。
使用.Text
返回单元格中的文字,否则您将返回.Value
,这是一个数字,即自19/1年1月1日以来的天数。
这样:
Range("A1").NumberFormat = "d-mmm-yyyy"
date= UserSheet1.Cells(1, 1).Text