1、打开Excel程序,按键盘组合键“Alt+F11”或切换至“开发工具”功能区并点击“Visual Basic”按钮进入VBA环境。
2、在VBA环境下,右击“Microsoft Excel对象”,从弹出的菜单中选择“插入”->“模块”项。
3、在打开的模块窗口中,输入以下代码:
Function 三项合并计算(a, b, c)
三项合并计算 = a * b + c
End Function
该代码用于对提供的三个参数进行计算,结果返回函数本身。
4、接着返回Excel界面,在单元格中输入公式“=三项合并计算(2,3,5)”并按回车键即可得结果。
5、当然,还可以通过引用三个单元格数据来实现同样的计算功能:分别在A2、B2、C2单元格中输入2,3,5,在D2单元格中输入“”并按回车键即可得结果。
Sub Macro1()
X = [A65536].End(3).Row
Range("B2").FormulaR1C1 = "=IF(RC[-1]="""","""",TEXT(RC[-1],""AAAA""))"
Range("B2").AutoFill Destination:=Range("B2:B" & X)
Range("B2:B" & X) = Range("B2:B" & X).Value '如果要保留公式,取消这一句.
Range("A1").Select
End Sub
注:假定第一行为表头,如果无表头,将所有"B2"改为"B1"即可.
WorksheetFunction属性,从VB中调用函数的容器,可以利用它在代码中直接用函数来返回结果。语句大概这样写:
Cells(20, 12) = Application.WorksheetFunction.SumIf(sheet1.Range(A5:A18), sheet1.Cells(1, 5), sheet1.Range(B5:B18)),这里调用的是SUMIF函数,写法和编公式是一样的,只不过公式中可以使用变量,更加方便了。
奇怪地说,为什么要通过VBA代码自动插入函数公式,直接在表格中输入公式不完了吗?=weekday(a1)