如何在VBA中调用Excel工作表函数
2016-07-15 · 知道合伙人软件行家
工具:Microsoft Office Excel 2007 办公软件
步骤:
1、打开Microsoft Office Excel 2007 办公软件,击 “开始” ->“Excel 选项”。
2、选择“常规”选项卡,并在右侧点选“在功能区显示‘开发工具’选项卡”,并单击“确定"。
3、在单元格A1中输入“弧度”,单元格B1中输入“角度”,单元格A2中输入“3.14”,然后在单元格B2中输入公式"=DEGREES(A2)"在按下回车后,该单元格输出结果为179.9087477。注:DEGREES函数的作用是将弧度转化为角度。
4、用VBA实现同样的功能。点击“开发工具”选项卡,单击“Visual Basic”,启动Visual Basic编辑器。
5、在“Microsoft Excel 对象”上点鼠标右键,依次点击“插入” -> “模块”,创建“模块1”,并在该模块中输入内容:
Sub 转换()
MsgBox Application.WorksheetFunction.Degrees(3.14)
End Sub
点击“运行子过程/用户窗体”按钮,在弹出的对话框中选择“转换”,然后点击“运行”按钮。
6、程序弹出对话框,结果与在Excel中利用公式输出的结果一样,只是有效数字的位数不一样,这可以根据需要加以取舍。
直接使用application方法
Excel2007版本,VBA中调用Excel工作表函数
对sheet1(工作表标签名称)中单元格A1:B5区域求和,代码如下:
Application.WorksheetFunction.Sum(sheets("Sheet1").Range("A1:B5"))
结果就是在sheet1表格中输入 “=sum(A1:B5)”
或同一工作薄其它工作表输入“=SUM(Sheet1!A1:B5)”得到一样的计算结果
xdlj = "SELECT * INTO 表1 FROM [Excel 8.0;Database=" & “Excel路径” & "].[Sheet1$]"
DoCmd.SetWarnings False ‘这一句的意思是取消导入警报
DoCmd.RunSQL xdlj '运行SQL语句
如myData = Application.WorksheetFunction.Count(Range("A2:D5"))
相当于Excel中=Count(A2:D5)的结果。
另一部分与一些变化不可以直接调用
如 Excel中的=IF()函数,在VBA中用IIF 函数
还有一些函数 如 =row() VBA 中变为 .row 属性
有的函数在VBA中没有
广告 您可能关注的内容 |