ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 534|回复: 15

[求助] excelvba录入数据分别保存至各明细表对应栏

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-3-14 14:49 | 显示全部楼层 |阅读模式
请老师指点,将录入的2022年-2035年每月收款金额和年份数据,按照楼号、室号分别保存至一号楼至十一号楼对应的室号明细收款栏,诚挚地感谢!

租金收入系统.zip

283.01 KB, 下载次数: 19

TA的精华主题

TA的得分主题

发表于 2024-3-14 16:03 | 显示全部楼层
根据 缴费日期来判断录入表格的哪一列??

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-14 16:51 | 显示全部楼层
3190496160 发表于 2024-3-14 16:03
根据 缴费日期来判断录入表格的哪一列??

不是按照缴费日期判断的,是把缴费数据分摊到每月,然后再保存到相对应一号至十一号楼以及室号的相应表格栏,可以参照“收缴数据汇总”表H至GG栏数据格式,比如“收缴数据录入”表一号楼101室的缴费数据就保存到“一号楼”表101室H2至GG2栏,以此类推,另外,缴费期限可以是2023年-2024年的,也可以是2024年或2024-2025年的。谢谢啦!

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-14 17:02 | 显示全部楼层
例如:一号楼101室,2024年收缴的数据,按月保存到一号楼表101室AH2-AT2,到2025年收缴数据录入时,保存到一号楼表101室AU2-BG2,以此类推

TA的精华主题

TA的得分主题

发表于 2024-3-14 17:41 | 显示全部楼层
个人做表的话,基本这样。直观点
image.jpg

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-14 17:53 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-14 18:03 | 显示全部楼层
用VBA把录入数据保存到收缴数据汇总表,然后再用LOOKUP从收缴数据汇总表相应数据提取到一号楼至十一号楼表格相对应的楼号、室号栏的话,电脑需要运行大量时间,我希望VBA直接把录入数据保存到相应表格中,不知道是否可行?望不吝指教为荷,谢谢!

TA的精华主题

TA的得分主题

发表于 2024-3-14 18:44 | 显示全部楼层
顾瑞康 发表于 2024-3-14 16:51
不是按照缴费日期判断的,是把缴费数据分摊到每月,然后再保存到相对应一号至十一号楼以及室号的相应表格 ...

把缴费数据分摊到每月
根据什么来分摊呢???

TA的精华主题

TA的得分主题

发表于 2024-3-14 19:10 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
Sub sjlu()
With Sheets("收缴数据录入")
    lh = .[d5]
    sh = .[g5]
    lh = .[d5]
    bh = .[d3]
    ks = .[g7]
    js = .[i7]
    je = .[d9]
End With
ys = DateDiff("m", [g7], [i7]) + 1
pjs = je / ys
Dim rn As Range
With Sheets(lh)
    r = .Cells(Rows.Count, 1).End(xlUp).Row
    Set rn = .Range("b2:b" & r).Find(sh, , , , , , 1)
    If rn Is Nothing Then MsgBox lh & "工作表内找不到" & sh & "数据": End
    w = rn.Row
    ksn = Year(ks)
    jsn = Year(js)
    For i = ksn To jsn
        nf = i & "年"
        For j = 8 To 189
            If .Cells(1, j) = nf Then
                For s = j + 1 To j + 12
                    .Cells(w, s) = pjs
                Next s
            End If
        Next j
    Next i
End With
MsgBox "ok!"
End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-3-14 19:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
实际上,一号楼至十一号楼,这11个表格相对于11个数据库,在收缴数据录入表格界面里,用数据验证,可以分别读取各号楼、室收款金额,其中,B14是不同室号年收款金额、C14是年*n年合计金额,然后按此拆分成每月收款金额,见G13至G180,现在就需要把G13至G180、以及年E13/E25/E37...E169,这些数据按D5和G5两个判断依据,保存至11个分表对应表格栏。以上这么做,主要是想建好11个楼号数据收款信息,在2022-2035年期间,无论1年还是几年收款金额都能按上述要求保存,以此减少主界面输入以及计算和统计的工作量。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-29 16:19 , Processed in 0.048300 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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