【问题标题】:object defined error: iferror as string in vba对象定义错误:iferror 作为 vba 中的字符串
【发布时间】:2019-04-03 20:20:56
【问题描述】:

"Range("F" & i).Formula =" 在字符串中使用 iferror 时抛出对象定义的错误消息。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim i As Integer

For i = 16 To 194

If Range("O" & i) < 0 Then
    answer = MsgBox("Discounted. Are you sure?", vbYesNo)

    If answer = No Then
    Range("F" & i).Formula = "=iferror(VLOOKUP($B" & i & ",eac_equipment_list!$P:$S,2,FALSE),"")"

    End If

    If answer = vbYes Then

    Range("O" & i) = "0"

    End If          

End If

Next i

End Sub

想法?当我简单地使用没有“iferror”部分的 Vlookup 时,代码可以正常工作。

谢谢!

【问题讨论】:

    标签: excel vba


    【解决方案1】:
    "=iferror(VLOOKUP($B" & i & ",eac_equipment_list!$P:$S,2,FALSE),"")"
    

    应该是

    "=iferror(VLOOKUP($B" & i & ",eac_equipment_list!$P:$S,2,FALSE),"""")"
    

    字符串中嵌入的双引号需要加倍才能转义

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多