EXCEL如何将函数写成代码?
发布网友
发布时间:2022-04-30 15:24
我来回答
共4个回答
热心网友
时间:2022-06-26 06:38
2007 版本以上 可以用 sumifs公式:
=if(countblank(B4:E4),"",sum(sumifs(E$4:E4,B$4:B4,B4,D$4:D$4,{"存","利息","取","手续费","短信费","年费"})))
其实 公式本身就是程序, 而且 内置的 比 自己写的程序快.
要改成VBA也行, 直接 调用函数 就可以了 ,Application.worksheetfunction.if(...
或者 用 evaluate 也行
热心网友
时间:2022-06-26 06:38
用行号列标样式复制公式:
Range("C1").Formula = "=A1*B1"
用RC样式可以批量复制公式:
Range("D1:D10").FormulaR1C1 = "=RC1*RC2"
注:如公式中有双引号",则在代码中每个双引号必须替换成两个连续的双引号""
热心网友
时间:2022-06-26 06:39
有的时候用公式还是比较方便的。这个公式可以简化一下:
=IF(OR(B4="",D4="",E4=""),"",SUMPRODUCT((B$4:B4=B4)*((D$4:D4="存")+(D$4:D4="取")+(D$4:D4="利息")+D$4:D4="手续费")+(D$4:D4="短信费")+(D$4:D4="年费"))*E$4:E4)追问你确定这公式可行???
结果是:#VALUE!
追答公式没有问题。
检查一下E列,是不是有文本数据。
热心网友
时间:2022-06-26 06:39
有函数了还去写代码做啥?
最简单的把函数嵌入代码的方式是
RANGE()=EVALUATE("excel公式")
公式中的双引号""最好替换成单引号''追问函数有时候容易误删
追答简单点就是直接用evaluate运行原公式
如果要改写成VBA,最好是发图说明要求