使用VBA设置单元格公式:IF与CONCATENATE函数报错问题
问题解决:VBA设置IF+CONCATENATE公式时的“end of statement”错误
你的代码触发错误的核心原因是字符串内的双引号未转义。在VBA中,若要在被双引号包裹的字符串里使用双引号,必须用两个连续双引号("")表示单个双引号,否则VBA会把单独的双引号识别为字符串的结束标记,进而抛出“end of statement”错误。
修正后的代码
Range("N7").Formula = "=IF(M7<0,CONCATENATE(""credit"",B7,M7),"""")"
可选简化写法
从Excel公式逻辑出发,也可以用&替代CONCATENATE,代码更简洁且效果一致:
Range("N7").Formula = "=IF(M7<0,""credit""&B7&M7,"""")"
内容的提问来源于stack exchange,提问作者stu
相关产品推荐
相关产品推荐

