本文目录一览:
- 1、如何在excel中使用VBA调用其它外部程序
- 2、Excel函数调用
- 3、EXCEL函数调用
- 4、excel里怎么调用函数?
- 5、excel函数怎么调用自定义函数
- 6、excel的VBA程序能否调用EXCEL函数呀?
如何在excel中使用VBA调用其它外部程序
使用shell语句,例子:
Sub RAR()
Shell "C:/Program Files/WinRAR/WinRAR.exe", vbNormalFocus
End Sub
Excel函数调用
如果是同一文件的表
=INDEX(表2!E:E,MATCH(D37,表2!A:A,1)+(2*D37SUM(OFFSET(表2!A1,MATCH(D37,表2!A:A,1)-1,0,2,1))))
原理:用MATCH函数查找到最接近并小于D37的数(设为z)的行数(设为n),由于表2是升序排列,故最接近D37要么是A列n行的数(设为x),要么是A列n+1行的数(设为y),当z-xy-z,即2zx+y时,最靠近z的是y,所在行数是n+1。用offset得到An:A(n+1)的引用,然后sum求和(即x+y);通过n+(2zx+y) (true为1,false为0)得到最靠近z所在数的行数,然后用index函数通过行数得到想要的值。
EXCEL函数调用
在A2单元格输入公式
=INDEX(表1!A:A,SMALL(IF(表1!B$2:B$100="部门A",ROW($2:$100),4^8),ROW(A1)))""
数组公式,按下SHIFT+CTRL+ENTER三键结束输入,再下拉复制公式
这样就得到表1中属于部门A的人名了
在B2中输入公式
=VLOOKUP(A2,表1!A:C,COLUMN(B1),0)
右拉复制公式至C2单元格
再一起下拉复制公式
当然直接右拉复制A2的公式也行,加上$符号
在A2单元格输入公式
=INDEX(表1!A:A,SMALL(IF(表1!$B$2:$B$100="部门A",ROW($2:$100),4^8),ROW(A1)))""
数组公式,按下SHIFT+CTRL+ENTER三键结束输入,
右拉复制公式至C2单元格,再下拉复制公式
但这是数组公式,用多了占内存,所以不建议
excel里怎么调用函数?
.xlsm是启用宏的excel表格,可以直接在里面调用函数,步骤,先打开计算用表.xlsm,然后象用EXCEL自带函数一样用,比如要用Vo函数,则在单元格中输入=Vo()回车就行了
excel函数怎么调用自定义函数
方法/步骤
打开Excel2007,切换至“开发工具”选项卡,点击“Visual Basic”按钮进入VBA编程环境。
在VBA环境下,右击“Microsoft Excel对象”,在弹出的菜单中选择“插入”→“模块”。
接着点击“插入”菜单中的“过程”。
在打开的“添加过程”窗口中,输入函数名称,例如“ShowID”,类型设置为“函数”,最后点击“确定”按钮进入编辑状态。
在打开的函数编辑窗口中,输入该函数要实现的功能。例如编辑如图所示的代码:
点击“关闭并返回Microsoft Excel"。
7
在Excel工作表中输入公式“=ShowID()”并按回车键,就可以查看效果啦。
excel的VBA程序能否调用EXCEL函数呀?
大部分是可以的
先假设Excel的工作表函数SUM
SUM不是VBA函数,但亦可在VBA上引用
在此提供简单的代码方法:
Range("a1")=WorksheetFunction.Sum(Range("B3:B6"))
或
Range("a1")=Application.Sum(Range("B3:B6"))
或
Range("a1")=Application.WorksheetFunction.Sum(Range("B3:B6"))
但有部分Excel函数是不可以在VBA内引用,如trunc,numberstring,…