Excel精英培训网

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

[已解决]学校账簿设计:信息分解(代码修改或新写代码)

[复制链接]
发表于 2013-12-11 17:45 | 显示全部楼层 |阅读模式
本帖最后由 龙送农 于 2013-12-13 16:48 编辑

这是fffox 老师帮我写的代码。为了方便统计,我将原来的C列“凭证号”分成两列“字、号”C列和D列,想要实现的是:用VBA,点击“请你分解”,“银行账”和“现金账”以E列种类并按日期顺序,将A列至K列信息分解到后边的相关名称表。麻烦大师帮我修改或重新写代码

Sub 分解()
    Dim d, arr
    Dim i%, j As Byte, k As Byte, iRow%, sh As Object
    Dim brr(1 To 100, 1 To 9)
    Set d = CreateObject("scripting.dictionary")
    For k = 4 To 8       'Sheets.Count
        Set sh = Sheets(k)
        'If sh.Name <> "银行账" And sh.Name <> "现金账" Then
        d(sh.Name) = k
        With Sheets("银行账")
            arr = .Range("a6:i" & .Range("a65536").End(xlUp).Row)
        End With
        For i = 1 To UBound(arr)
            If d(arr(i, 5)) = k Then
                iRow = iRow + 1
                For j = 1 To 10
                    brr(iRow, j) = arr(i, j)
                Next
            End If
        Next
        With Sheets("现金账")
            arr = .Range("a6:i" & .Range("a65536").End(xlUp).Row)
        End With
        For i = 1 To UBound(arr)
            If d(arr(i, 5)) = k Then
                iRow = iRow + 1
                For j = 1 To 10
                    brr(iRow, j) = arr(i, j)
                Next
            End If
        Next
        sh.Range("a6").Resize(iRow, 10) = brr
        Set sh = Nothing
        iRow = 0
        Erase brr
        'End If
    Next
End Sub
最佳答案
2013-12-12 18:51
学校账簿设计.rar (24.85 KB, 下载次数: 71)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-12-11 18:14 | 显示全部楼层
回复

使用道具 举报

发表于 2013-12-11 19:43 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2013-12-12 07:53 | 显示全部楼层
zjdh 发表于 2013-12-11 18:14
你的附件无法打开

重新传来了,老师您帮看看!
回复

使用道具 举报

发表于 2013-12-12 18:51 | 显示全部楼层    本楼为最佳答案   
学校账簿设计.rar (24.85 KB, 下载次数: 71)
回复

使用道具 举报

 楼主| 发表于 2013-12-13 16:46 | 显示全部楼层
zjdh 发表于 2013-12-12 18:51

谢谢老师!
回复

使用道具 举报

 楼主| 发表于 2014-3-19 17:12 | 显示全部楼层
zjdh 发表于 2013-12-12 18:51

老师,这是你帮写的代码,麻烦你再帮看一下,每项“分账种类”超100就不能分解问题。

每项超100就不能分解问题.zip

41.68 KB, 下载次数: 5

回复

使用道具 举报

发表于 2014-3-19 21:14 | 显示全部楼层
龙送农 发表于 2014-3-19 17:12
老师,这是你帮写的代码,麻烦你再帮看一下,每项“分账种类”超100就不能分解问题。


我以为100条就够了,现增加到1500条够了吧。
分解问题.rar (34.06 KB, 下载次数: 18)
回复

使用道具 举报

 楼主| 发表于 2014-3-19 21:21 | 显示全部楼层
zjdh 发表于 2014-3-19 21:14
我以为100条就够了,现增加到1500条够了吧。

只要修改:

谢谢老师!!!!
回复

使用道具 举报

 楼主| 发表于 2014-4-15 12:05 | 显示全部楼层
zjdh 发表于 2014-3-19 21:14
我以为100条就够了,现增加到1500条够了吧。

只要修改:

尊敬的老师,现在我只想分解“银行账”,代码怎样精减。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 00:15 , Processed in 0.511088 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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