excel vba 调用webbrowser_VBA 公式与函数

一, 在单元格中输入公式的3种方法:

    1) 用VBA在单元格中输入普通公式

Sub formula_1()        Range("d2") = ("=B2 * C2")    End Sub

运行程序后,在D2的单元格内显示的是公式 =B2 * C2 ,并非程序返回值.下文(二)中会介绍另外一种直接返回值的方式

b6f8ae148669b63dbb03f99294aa0f18.png

    想要通过程序一次计算完所有D列金额,只要运行上一篇文章循环语句,即可一次性完成计算. 具体代码如下:

    Sub fomula_t2()        Dim x As Integer        For x = 2 To 4            Cells(x, 4) = "=b" & x & "*" & "c" & x        Next x    End Sub

    2)用VBA在单元格中输入带引号的公,以Sumif公式举例,函数Sumif参数:(Range,Criteria,sum_rangge)即(判断范围,判断条件,求和区域). 其中判断条件可以为单元格也可以是文本,而文本在函数参数中是需要加上引号的. 

在单元格用公式的方式实现方式:

c66d34d252620d603f9939a2a34ac997.png

   如果需要用VBA代码的方式实现 , 需要特别主要的是:公式中用到引号的地方,VBA代码中需要使用双重引号  : 见下放代码中的""刀轮""

    Sub fumula_t3()        Range("B10") = "= sumif(A2:A5,""刀轮"",d2:d5)"    End Sub

    3)在Excel中我们时常会使用到数组来帮助计算, 使用数组的方式计算上图中的D列合计金额计算方法: = sum(B2:B5 * C2:C5).

       *Excel小知识: 特别注意在计算前需要首先选中D2:D5,然后输入公式.最后同时按下Ctrl + Shift + Enter

      如果使用VBA的方式,则需要调用一个Range新的属性Formulaarray可实现相同的效果:

    Sub formula_t4()        Range("D2").FormulaArray = "=sum(B2:B6 * C2:C6)"    End Sub

-----------------------------------

二,利用单元格公式返回值,不显示公式

    在公式之前加上Evaluate后, 单元格只显示公式的返回值,而不会显示公式.

    Sub formula_1()        Range("d2") = Evaluate("=B2 * C2")    End Sub

cbdcf1b2b4b47ce4896de48dbe71cf26.png

------------------------------------

三,调用Excel公式

    调用方法:Application.worksheetfunction

    注意事项:单元格表示方式与公式不同, 上述方法的单元格表示方式均为单元格加引号("D2"),如果使用调用的方式,则需要表示为range("D2")   

    Sub fomula_t6()        Range("b10") = Application.WorksheetFunction.Sum(Range("d2:d5"))    End Sub

dc38cbb09ed2339282e8cd297bba0939.png

-------------------------------

四,调用VBA函数

    VBA函数与工作表函的数有一些重叠的部分,有些功能类似但是参数的顺序不同.鉴于函数太多,大家在使用的时候可以通过F1查看帮助以便更好地使用.这里我们只说明一下调用地方法. 我们使用VBA.Instr 函数举例,实现在C9单元格中显示"金"字在B9单元格中首次出现地位置

Instr:指定一个字符串在另一个字符串中首次出现的位置 , 

Sub fomula_t7()        Range("C9") = VBA.InStr(Range("B9"), "金")    End Sub

运行后,得到地结果是 3.

除了以上4中方法,还有一个就是自定义函数了,这部分我们在后面的Function功能会再次重点讲解,这里就不再赘述了~

关键字: 双引号 , Formulaarray , evaluate , worksheetfunction , VBA函数

今天的内容就是这些了,快动手试一试吧~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值