[英]Adding Formula to Cell from Excel Macro
我在工作表 2 中有一个宏按钮,并希望它将公式放入工作表 1 的列中。例如,我可以执行一个简单的求和公式,例如:
Sheets("worksheet1").Range("I:I") = "=SUM(M:M)"
这有效,但是当我尝试使用实际更复杂的公式进行操作时,我希望它不起作用。 为什么是这样?
Sheets("worksheet1").Range("I:I") = "=IF(ISNUMBER(SEARCH("*567*",B:B)),"INSTOCK","")"
像你一样写一个双引号会让 VBA 认为你在写完"=IF(ISNUMBER(SEARCH("
之后就结束了你的字符串。事实上,这段代码会出错。你需要把你的引号加倍。一个很好的方法要了解您正在编写的内容,请先使用Debug.Print
:
Debug.Print "=IF(ISNUMBER(SEARCH(""*567*"",B:B)),""INSTOCK"","""")"
所以这将起作用:
Sheets("worksheet1").Range("I:I") = "=IF(ISNUMBER(SEARCH(""*567*"",B:B)),""INSTOCK"","""")"
注意:由于您使用的是整列引用,这将对您的计算产生很大影响!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.