如何通过vba计算,使年月日三个单元格组合起来计算结果为日期格式?

写了以下代码,同样代码在不同电脑显示不同: ws.Range("P13").Value = DateSerial(UserForm1.TextBox11.Value, UserForm1.ComboBox8.Value, UserForm1.ComboBox9.Value) ws.Range("Q13").Value = DateSerial(UserForm1.TextBox14.Value, UserForm1.ComboBox10.Value, UserForm1.ComboBox11.Value) 正常应该是"2017/6/22"或者一个数值"42908",但是换一台电脑计算结果就是"2017/6/22/周四"而且无法转成日期格式。 求大神解答,如何设置或者如何调整代码呢?
浙江省
浏览 647
收藏
6
分享
6 +1
9
+1
全部评论 9
 
星辰
你的UserForm1是什么数据,会不会是一直在变化
· 江西省
回复
 
WJ
打卡
· 北京
回复
 
Οňlу~寶
打卡
· 山东省
回复
 
wils
wils

创作者俱乐部成员

dateserial返回的确实是日期,但它的显示模式是根据当前电脑的设置来的,所以不同,可以在外面加上一层CLng(dateserial(x,x,x))这样,返回的就一定是数字,需要字符串应该可以用format函数转换 但是在wps写vba本就有很多不适应的地方,加上现在推广的linux系统里根本就没有vba,还是改写jsa吧,各方面要方便很多
· 广东省
1
回复
 
雨后清新
学习了
· 浙江省
回复
 
方盛
方盛

创作者俱乐部成员

用不上,但是支持你的求知精神。
· 湖北省
回复
 
懒得批爆
懒得批爆

创作者俱乐部成员

虽然不认识代码,但知道必须不一样 因为js宏这个貌似WPS独有的,而且仅在windows上起作用,换到任意一台mac都不支持,
· 四川省
回复
蔡维贤
不是js宏,就是vb,普通excel都有的开发工具
· 浙江省
回复