VBA字典数组运用实例2(定额录入)

作者: 猛犸象和剑齿虎 | 来源:发表于2018-10-09 17:37 被阅读14次
    效果图

    功能介绍:当平时工作处理数据量较大的时候,就要考虑数据的规范性,怎样录入方便、准确,及后续工作开展。那么将一些常用又相对固定的数据单独做一份定额是有必要的。

    这样在核算时通过将定额部分引用出来核算,减少工作量和数据维护时间(例如当定额发生改变,没有采用引用方式,需要对涉及改变的数据逐一修改等)。引用可以采用函数:vlookup以及index、match嵌套引用等,我之前采用的方式就是函数。

    其实函数也很方便,本例采用vba代码则是另一种思路。

    微软的脚本字典是一个十分方便的功能,在vba中它仅仅只有四种属性和六个方法,方便记忆与理解,而它与vba数组组合使用产生的代码异常简洁,运行效率奇高。

    相信和我一样初学vba的小伙伴,在面对行数过多代码时都会头皮发麻,头昏脑胀,口吐白沫…下面7行代码是否是你需要的呢?

    本月任务二完成,还是很愉快的。

    代码思路简介:

    1.将定额写入数组;

    2.将数组写入字典;

    3.将字典关键字对应的条目输出到对应单元格。

    定额

    Option Explicit

    Sub 录入()

    Dim arr, i%, rng As Range

    With CreateObject("scripting.dictionary")

    arr = Worksheets("定额").Range("b2:m500")

    For i = 1 To UBound(arr)

    .Item(arr(i, 1)) = Array(arr(i, 2), arr(i, 3), arr(i, 4), arr(i, 5), arr(i, 6), arr(i, 7), arr(i, 8), arr(i, 9), arr(i, 10), arr(i, 11), arr(i, 12))

    Next

    For Each rng In Worksheets("成本数据录入").Range("e2", Worksheets("成本数据录入").[e63356].End(xlUp))

    rng.Offset(0, 1).Resize(1, 11) = .Item(rng.Value)

    Next

    End With

    End Sub

    相关文章

      网友评论

        本文标题:VBA字典数组运用实例2(定额录入)

        本文链接:https://www.haomeiwen.com/subject/fxzsaftx.html