ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 求大神帮忙 已经接近尾声了

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-2-27 10:28 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
求大神帮忙 “2”那个表里的项目 按需求填写到“台账2”里 并按车牌号生成 另一个新的总表 也就是说有多少车牌号 就有多少 车牌号命名的总表
详情就是表里1那样 只是 和2比又加了几项! 还有就是表头的金额汇总的公式没了 !
都是论坛里大神的帮助的结果! 真的很不易!马上见日出了!
万分感谢!
又有加项了 新加的加油升数 和金额

填表代码(无加油).zip

79.36 KB, 下载次数: 7

TA的精华主题

TA的得分主题

发表于 2023-2-27 10:50 | 显示全部楼层
提前祝贺你白嫖成功,么么哒

TA的精华主题

TA的得分主题

发表于 2023-2-27 11:05 | 显示全部楼层
  1. Sub test()
  2.     Dim r%, i%
  3.     Dim arr, brr
  4.     Dim d As Object
  5.     Application.ScreenUpdating = False
  6.     Application.DisplayAlerts = False
  7.     Set d = CreateObject("scripting.dictionary")
  8.     With Worksheets("sheet2")
  9.         r = .Cells(.Rows.Count, 1).End(xlUp).Row
  10.         arr = .Range("a2:m" & r)
  11.         For i = 1 To UBound(arr)
  12.             arr(i, 1) = CDate(arr(i, 1))
  13.             yf = Month(arr(i, 1))
  14.             rq = Day(arr(i, 1))
  15.             If Not d.exists(arr(i, 4)) Then
  16.                 Set d(arr(i, 4)) = CreateObject("scripting.dictionary")
  17.             End If
  18.             If Not d(arr(i, 4)).exists(0) Then
  19.                 ReDim crr(1 To 6)
  20.                 crr(1) = arr(i, 9)
  21.                 crr(2) = arr(i, 4)
  22.                 crr(3) = arr(i, 11)
  23.             Else
  24.                 crr = d(arr(i, 4))(0)
  25.             End If
  26.             If Not d(arr(i, 4)).exists(yf) Then
  27.                 ReDim brr(1 To 7, 1 To 32)
  28.             Else
  29.                 brr = d(arr(i, 4))(yf)
  30.             End If
  31.             brr(1, rq) = brr(1, rq) + arr(i, 7)
  32.             brr(2, rq) = brr(2, rq) + arr(i, 8)
  33.             brr(3, rq) = arr(i, 10)
  34.             brr(4, rq) = brr(4, rq) + arr(i, 6)
  35.             brr(5, rq) = arr(i, 5)
  36.             brr(6, rq) = arr(i, 12)
  37.             brr(7, rq) = arr(i, 13)
  38.             brr(1, 32) = brr(1, 32) + arr(i, 7)
  39.             brr(2, 32) = brr(2, 32) + arr(i, 8)
  40.             brr(4, 32) = brr(4, 32) + arr(i, 6)
  41.             d(arr(i, 4))(yf) = brr
  42.             crr(4) = crr(4) + arr(i, 7)
  43.             crr(5) = crr(5) + arr(i, 8)
  44.             crr(6) = crr(6) + arr(i, 6)
  45.             d(arr(i, 4))(0) = crr
  46.         Next
  47.     End With
  48.     For Each aa In d.keys
  49.         With Worksheets("sheet1")
  50.             crr = d(aa)(0)
  51.             .Range("c2") = crr(1)
  52.             .Range("k2") = crr(2)
  53.             .Range("o2") = crr(3)
  54.             .Range("t2") = crr(4)
  55.             .Range("y2") = crr(5)
  56.             .Range("ae2") = crr(6)
  57.             For i = 4 To 92 Step 8
  58.                 .Cells(i, 3).Resize(7, 32).ClearContents
  59.             Next
  60.             For Each bb In d(aa).keys
  61.                 If bb <> 0 Then
  62.                     brr = d(aa)(bb)
  63.                     .Cells(bb * 8 - 4, 3).Resize(UBound(brr), UBound(brr, 2)) = brr
  64.                 End If
  65.             Next
  66.             .Copy
  67.             With ActiveWorkbook
  68.                 .SaveAs Filename:=ThisWorkbook.Path & "" & aa
  69.                 .Close False
  70.             End With
  71.         End With
  72.     Next
  73.    
  74. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-27 11:05 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2023-2-27 11:06 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2023-2-27 11:47 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
你这个是我写的吧
1.增加的的应该也是自动汇总的,没看出来需要修改的。
2.公式这个位置金额已自动汇总了,这里不需要公式的,如果保留公式,少写代码一句即可.

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-27 12:08 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
gwjkkkkk 发表于 2023-2-27 11:47
你这个是我写的吧
1.增加的的应该也是自动汇总的,没看出来需要修改的。
2.公式这个位置金额已自动汇总了 ...

是的 谢谢大神  增加了 油类的 表格也变了 所以 以前的代码用了  运行错误

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-2-27 13:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

大神 车辆信息更新以后
这段出错
arr(i, 1) = CDate(arr(i, 1))
请问怎么修改

TA的精华主题

TA的得分主题

发表于 2023-2-27 18:10 来自手机 | 显示全部楼层
bao205540 发表于 2023-2-27 13:30
大神 车辆信息更新以后
这段出错
arr(i, 1) = CDate(arr(i, 1))

A列可能不是日期数据。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-18 22:52 , Processed in 0.041547 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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