【问题标题】:.Formula brings error with punctuation marks vba [duplicate].Formula 带有标点符号 vba 的错误 [重复]
【发布时间】:2020-01-31 16:44:14
【问题描述】:

我在通过 VBA 向单元格添加公式时遇到问题。 一切都很好,直到我向它添加标点符号(如“(”)。 我在这里做错了什么? 我已经尝试过使用 chr() 函数,但它不起作用。

 Do Until ws.Cells(i, 1) = ""
 If ws.Cells(i, 7).Value <> "" Then
    If ws.Cells(i, 7).Value <> 0 Then
        ws.Cells(i, 7) = 200
        ws.Cells(i, 8).Value = 0
        ws.Cells(i, 9).Value = 0
        ws.Range("J" & i).Formula = "=IF(H" & i & "-F" & i & "<=0;0;H" & i & "-F" & i & ")"

问候, 乌卡洛

【问题讨论】:

  • BigBen 公式当然应该是 "=IF(H5-F5
  • 哦,对不起。运行时错误 1004 / 应用程序定义或对象定义错误
  • 哪一行产生错误?您是否正确初始化并声明了ws

标签: excel vba


【解决方案1】:

替换:

ws.Range("J" & i).Formula = "=IF(H" & i & "-F" & i & "<=0;0;H" & i & "-F" & i & ")"

与:

ws.Range("J" & i).Formula = "=IF(H" & i & "-F" & i & "<=0,0,H" & i & "-F" & i & ")"

如果你想让它变得简单,请参阅:

Reference

【讨论】:

  • 是的,没错。我不会自己跟踪。谢谢加里的学生。你知道它是否连接到本地设置的excel?如果我在其他功能中的变化也来自“;”到“'”?
  • @Lukasz 使用FornulaLocal 可以更轻松地将公式从工作表复制到 VBA 代码。
猜你喜欢
  • 2012-04-25
  • 1970-01-01
  • 1970-01-01
  • 2014-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-26
  • 1970-01-01
相关资源
最近更新 更多