Excel精英培训网

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

[已解决]如何用VBA从表1,根据绿色区域有值的起始日期和结束日期

[复制链接]
发表于 2014-1-15 16:58 | 显示全部楼层 |阅读模式
本帖最后由 qinhuan66 于 2014-1-15 20:01 编辑

求助:如何用VBA从历年参保情况表,根据绿色区域数据的时间起到止,提取到基金易地转移单黄色区域内。注年份起始时间不固定,看参保时间,有时1995开始,有时2000年开始,但会顺着下来。谢谢
例子如:
1995年9月 至 2011年4月  共188个月

求助.rar (13.67 KB, 下载次数: 8)
发表于 2014-1-15 17:15 来自手机 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2014-1-15 18:33 | 显示全部楼层
爱疯 发表于 2014-1-15 17:15
range.find方法可以做,下班了

期待中。。。。
回复

使用道具 举报

发表于 2014-1-15 19:36 | 显示全部楼层    本楼为最佳答案   
Sub Test()
    Dim x, y, z
    '范围
    Set x = Range("b7:y31").Find("*", [b7], , , , xlNext)
    Set y = Range("b7:y31").Find("*", [b7], , , , xlPrevious)
    If Not x Is Nothing Then x = Cells(x.Row, 1) & Cells(4, x.Column) Else x = ""
    If Not y Is Nothing Then y = Cells(y.Row, 1) & Cells(4, y.Column - 1) Else y = ""
    z = x & "至" & y
    '多少月
    Sheet2.Range("g5") = z & " 共" & VBA.DateDiff("m", x, y) & "个月"
End Sub


我觉得应该是187个月,原因见测试.xls。

1.rar (24.34 KB, 下载次数: 14)

评分

参与人数 1 +3 收起 理由
qinhuan66 + 3

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-1-15 19:42 | 显示全部楼层
本帖最后由 qinhuan66 于 2014-1-15 19:53 编辑
爱疯 发表于 2014-1-15 19:36
Sub Test()
    Dim x, y, z
    '范围

谢谢你版主。经测试很成功。不过你说的是187
经核实应该是188个月

2014-01-15-194121.png 2014-01-15-194136.png
2014-01-15-195216.png
2014-01-15-195303.png
回复

使用道具 举报

发表于 2014-1-15 20:20 | 显示全部楼层
qinhuan66 发表于 2014-1-15 19:42
谢谢你版主。经测试很成功。不过你说的是187
经核实应该是188个月

你希望的是:共有多少个月。例如2013-1-1至2013-2-1,共有2个月。
而工作表函数和vba函数:是间隔多少个月。例如2013-1-1至2013-2-1,间隔1个月。

所以,要是按你希望的效果,改下最后一句即可
Sheet2.Range("g5") = z & " 共" & VBA.DateDiff("m", x, y)+1 & "个月"

评分

参与人数 1 +3 收起 理由
qinhuan66 + 3 很给力!谢谢版主

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-1-15 20:28 | 显示全部楼层
本帖最后由 qinhuan66 于 2014-1-15 20:29 编辑
爱疯 发表于 2014-1-15 20:20
你希望的是:共有多少个月。例如2013-1-1至2013-2-1,共有2个月。
而工作表函数和vba函数:是间隔多少个 ...

版主经测试,没值时生成时会出错,能否做到没数据时提取过来为空白。谢谢

2014-01-15-202718.png 2014-01-15-202659.png
回复

使用道具 举报

发表于 2014-1-15 20:29 | 显示全部楼层
qinhuan66 发表于 2014-1-15 20:28
版主经测试,没值时生成时会出错

上传一下你这个出错的附件,我试试
回复

使用道具 举报

 楼主| 发表于 2014-1-15 20:31 | 显示全部楼层
爱疯 发表于 2014-1-15 20:29
上传一下你这个出错的附件,我试试

根据绿色区域有值的起始日期和结束日期.rar (12.39 KB, 下载次数: 5)
回复

使用道具 举报

发表于 2014-1-15 20:35 | 显示全部楼层
根据绿色区域有值的起始日期和结束日期2.rar (12.55 KB, 下载次数: 6)

评分

参与人数 1 +3 收起 理由
qinhuan66 + 3 很给力!谢谢

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 20:23 , Processed in 0.264635 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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