ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何批量将两个表单数据填充到模板

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-2-15 16:49 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
宿舍资产特别多,几百个宿舍复制粘贴到崩溃。
如何将固定资产和低值资产两个表单的数据填充到宿舍资产明细表相应的栏目中,请各位大佬们帮帮忙。要求如下:
1、相同地点的数据填充在同一个表,按一个地点生成一张明细表,14个宿舍就生成14张明细表。
2、明细表可以生成在同一个表单中,一路往下排,无需新建成独立文件或新表单。
3、明细表忆设置固定资产数量为9行,低值资产数量为15行,如果可以的话,明细表中的这两个行数能不能根据资产表的数据自动增减,在增减的基础上再进行限制,比如固定资产最少5行,低值资产最少10行(包括空白行)。


眼巴巴的在线等~~~~~




宿舍资产明细表.zip

26.56 KB, 下载次数: 18

TA的精华主题

TA的得分主题

发表于 2023-2-15 21:28 来自手机 | 显示全部楼层
你目的是打印还是生成,生成几百个明细往下排,也不好管理呢。用我的万能批量打印软件可以实现批量打印。软件在我的主页里面有,可以自行下载,不懂的再联系我

TA的精华主题

TA的得分主题

发表于 2023-2-15 21:37 来自手机 | 显示全部楼层
在我论坛里面有,自己去下载

TA的精华主题

TA的得分主题

发表于 2023-2-16 21:00 | 显示全部楼层
Option Explicit
Sub TEST()
    Dim ar(3 To 4), br, i&, j&, k&, r&, dic As Object, vKey
    Dim Rng As Range, wks As Worksheet, t#, iPosRow&, iRowCount&


    DoApp False
    Set dic = CreateObject("Scripting.Dictionary")
    Set wks = Sheets("模板")
    t = Timer

    For i = 3 To 4
        ar(i) = Sheets(i).[A1].CurrentRegion
    Next i
    For i = 2 To UBound(ar(3)): dic(ar(3)(i, 7)) = "": Next

    With Workbooks.Add
         For Each vKey In dic.keys
             wks.Copy after:=.Sheets(.Sheets.Count)
             With .ActiveSheet
                 .Name = vKey
                 For i = 4 To 3 Step -1
                     ReDim cr(1 To UBound(ar(i)), 1 To UBound(ar(i), 2) + 1)
                     r = 0
                     For j = 2 To UBound(ar(i))
                         If ar(i)(j, 7) = vKey Then
                              r = r + 1
                              For k = 1 To UBound(ar(i), 2)
                                  cr(r, k + 1) = ar(i)(j, k)
                              Next k
                              cr(r, 1) = r
                         End If
                     Next j
                     iPosRow = IIf(i = 4, 11, 4)
                     iRowCount = IIf(i = 4, 10, 5)
                     If r > iRowCount Then
                         For j = 1 To r - iRowCount
                             .Rows(iPosRow + 1).Insert Shift:=xlDown
                         Next j
                     End If
                     .Cells(iPosRow, 1).Resize(r, UBound(cr, 2)) = cr
                 Next i
             End With
         Next vKey
         For Each wks In .Sheets
             If wks.Name Like "*Sheet*" Then wks.Delete
         Next
    End With

    Set dic = Nothing: Set wks = Nothing
    DoApp
    MsgBox "执行完毕!_用时:  " & Format(Timer - t, "0.00") & "  秒", 64
End Sub
Function DoApp(Optional b As Boolean = True)
    With Application
        .ScreenUpdating = b
        .DisplayAlerts = b
        .Calculation = -b * 30 - 4135
    End With
End Function


评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-2-16 21:07 | 显示全部楼层
请楼主参考附件,相关表格请勿删除。。。

宿舍资产明细表.rar

44 KB, 下载次数: 20

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-2-16 22:56 | 显示全部楼层
万能批量打印软件用于楼主的案例
无标题.jpg

宿舍资产明细表.rar

671.59 KB, 下载次数: 14

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-2-16 23:04 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
chengyunpan 发表于 2023-2-16 22:56
万能批量打印软件用于楼主的案例

忘了修改设置,按这个图片修改即行。
1676559673244.png

TA的精华主题

TA的得分主题

发表于 2023-2-16 23:07 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-17 08:46 | 显示全部楼层
gwjkkkkk 发表于 2023-2-16 21:07
请楼主参考附件,相关表格请勿删除。。。

感谢国民好网友,太太太感谢,完美解决问题。

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-17 09:02 | 显示全部楼层
chengyunpan 发表于 2023-2-16 22:56
万能批量打印软件用于楼主的案例

太感谢了,这个也非常赞,可以一键打印。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-19 04:17 , Processed in 0.033956 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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