• 在VBA中使用Excel函数 在单元格中插入工作表函数

    2006年03月29日

    在VBA中使用Excel函数

    通常的,一些Excel函数很高效的,但是不少函数却不是VBA函数,无法直接在VBA中使用,比如Sum()、Rand()等等,在VBA中直接使用都会出错的。比如:s=Sum(A1:A10)

    但我们可以在VBA中通过Application.worksheetFunction对象来引用excel函数,而且其运行效率要比使用其他方式快捷得多:

    如求工资和的例子:
    通常的代码是:
    For Each c In Range(″A1:A1000″)
       Totalvalue = Totalvalue + c.value
    Next

    而下面代码程序比上面例子快得多:
      Totalvalue=Application.WorksheetFunction.Sum(Range(″A1:A1000″))

      其它函数如Count,Counta,Countif,Match,vLookup等等,都能代替相同功能的VBA程序代码,提高程序的运行速度。

    在单元格中插入工作表函数

    若要在单元格中插入工作表函数,请指定函数作为相应的 Range 对象的 Formula 属性值。以下示例中,将 RAND 工作表函数(可生成随机数)赋给了活动工作簿中 Sheet1 上 A1:B3 单元格区域的 Formula 属性。

    Sub InsertFormula()
        Worksheets("Sheet1").Range("A1:B3").Formula = "=RAND()"
    End Sub

    \\经zhyzhsh测试,直接使用cells(1,1).value="=rand()"就可以输入函数了。


    随机文章:

    真正的程序员 2009年07月06日




    评论

  • 相逢是有缘,偶然来到你的小屋,不错,小歇一下,顺便送你一份愚人节小礼物http://tools.koook.com/yrj/yrjpica1.html

    ,拿来送给朋友不错哦~~

    欢迎来我的麻辣鸡丝小屋做客!