Excel精英培训网

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

[已解决]请高手帮我看下如何把单元格中的2011批量改成2012

[复制链接]
发表于 2011-12-21 12:10 | 显示全部楼层 |阅读模式
我附件上有1个表,在a列中,他的日期都是2011几月几号,我想改成2012的几月几号,意思是能否提供一个代码,根据c1的年份,当执行后他把a列改成c1年同月同日。例如当执行该代码后,a1=2012年3月22,谢谢高手的帮忙。
最佳答案
2011-12-21 23:36
  1. Sub xg1()
  2.     For x = 1 To [a65536].End(3).Row
  3.         Cells(x, 1) = VBA.DateAdd("yyyy", 1, Cells(x, 1))
  4.     Next
  5. End Sub
复制代码
这个也可以

更改日期.rar

1.36 KB, 下载次数: 13

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-12-21 12:19 | 显示全部楼层
回复

使用道具 举报

发表于 2011-12-21 23:02 | 显示全部楼层
本帖最后由 lisachen 于 2011-12-21 23:39 编辑
  1. Sub xg()
  2. Dim arr
  3. yy = [c1]
  4. arr = Range("a1:a" & [a65536].End(3).Row)
  5. For x = 1 To UBound(arr)
  6. mm = VBA.Month(arr(x, 1))
  7. dd = VBA.Day(arr(x, 1))
  8. arr(x, 1) = VBA.DateSerial(yy, mm, dd)
  9. Next
  10. Range("b1").Resize(UBound(arr)) = arr
  11. End Sub
复制代码

更改日期.zip (7.27 KB, 下载次数: 6)
回复

使用道具 举报

发表于 2011-12-21 23:36 | 显示全部楼层    本楼为最佳答案   
  1. Sub xg1()
  2.     For x = 1 To [a65536].End(3).Row
  3.         Cells(x, 1) = VBA.DateAdd("yyyy", 1, Cells(x, 1))
  4.     Next
  5. End Sub
复制代码
这个也可以
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 03:26 , Processed in 0.325387 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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