簡體   English   中英

從 Excel 宏向單元格添加公式

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM