Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2161|回复: 7

[已解决]请高手帮忙看下代码,请教日期格式经过VBA处理后怎么还原为原来格式?

[复制链接]
发表于 2013-7-18 20:09 | 显示全部楼层 |阅读模式
附件中有两个工作簿,通过VBA将原数据工作簿数据汇总至汇总工作簿内,原数据工作簿中第一行为短日期格式,但VBA处理后在汇总工作簿中变为了长日期格式,请高手指点,如何在VBA处理后仍然可以保留原来的短日期格式?谢谢!

111_拼图.jpg

提问.rar (38.87 KB, 下载次数: 4)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-7-18 20:22 | 显示全部楼层    本楼为最佳答案   
Range.NumberFormat 属性
返回或设置一个 Variant 值,它代表对象的格式代码。
语法

表达式.NumberFormat

表达式   一个代表 Range 对象的变量。

说明


如果指定区域中的所有单元格包含不同的数字格式,则此属性返回 Null。

格式代码与“设置单元格格式”对话框中的“格式代码”选项是同一个字符串。
回复

使用道具 举报

发表于 2013-7-18 20:23 | 显示全部楼层
分别录一个如何设置单元格日期长短格式的宏就知道如何做了。
回复

使用道具 举报

 楼主| 发表于 2013-7-18 21:01 | 显示全部楼层
hwc2ycy 发表于 2013-7-18 20:23
分别录一个如何设置单元格日期长短格式的宏就知道如何做了。

版主我按您说的录了宏,长短日期格式分别为NumberFormatLocal = "[$-F800]dddd, mmmm dd, yyyy",Selection.NumberFormatLocal = "yyyy-m-d",我在原来的填充代码后加了一句Range("b2").Resize(dzz.Count, 1).NumberFormatLocal = "yyyy-m-d",但是不起作用,我发现单独录制宏的时候,像2012-12-12短日期变为长日期后为2012-12-12 星期三,但在公式栏中仍然显示为2012-12-12,但我VBA填充后,公式栏中已经为2012-12-12 星期三,不知道怎么解决?
回复

使用道具 举报

发表于 2013-7-18 21:06 | 显示全部楼层
philobj 发表于 2013-7-18 21:01
版主我按您说的录了宏,长短日期格式分别为NumberFormatLocal = "[$-F800]dddd, mmmm dd, yyyy",Selecti ...

录出来的应该是 "yy""-""m""-""d"
而不是 "yy-m-d" 吧?

  1. Range("b2").Resize(dzz.Count, 1).NumberFormatLocal = "yy""-""m""-""d"
复制代码
回复

使用道具 举报

发表于 2013-7-18 21:08 | 显示全部楼层
philobj 发表于 2013-7-18 21:01
版主我按您说的录了宏,长短日期格式分别为NumberFormatLocal = "[$-F800]dddd, mmmm dd, yyyy",Selecti ...

如果还要星期几就

"yy""-""m""-""d"" ""AAAA"  

如果只显示一位星期数就

"yy""-""m""-""d"" ""AAA"

自己录好了,修改一下再测试一下就明白了
回复

使用道具 举报

 楼主| 发表于 2013-7-18 21:20 | 显示全部楼层
无聊的疯子 发表于 2013-7-18 21:06
录出来的应该是 "yy""-""m""-""d"
而不是 "yy-m-d" 吧?

我录的代码:Sub 宏1()' 宏1 宏
'
    Selection.NumberFormatLocal = "[$-F800]dddd, mmmm dd, yyyy"
End Sub
Sub 宏2()
' 宏2 宏
    Selection.NumberFormatLocal = "yyyy-m-d"
End Sub

您看下附件,汇总工作簿中日期在公式栏中可以显示星期几,本来长日期在公式栏中是不显示星期几的,我用了您的代码
  • Range("b2").Resize(dzz.Count, 1).NumberFormatLocal = "yy""-""m""-""d",没有作用。您可以在附件中试试,麻烦您了。


回复

使用道具 举报

 楼主| 发表于 2013-7-18 23:01 | 显示全部楼层
无聊的疯子 发表于 2013-7-18 21:08
如果还要星期几就

"yy""-""m""-""d"" ""AAAA"  

代码中加了format解决了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 07:35 , Processed in 0.255010 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表