excel - VBA IF公式不起作用?

标签 excel vba if-statement formula

我有一些在几个工作簿之间工作的 VBA 代码

我遇到了一个问题,我无法应用这个 IF 公式。
我不确定我是如何得到 Subscript out of range错误。

我尝试使用 .Range("O") , .Range("O:O") , .Range("O", i)但都给出相同的 1004 错误。

我使用 .Range() 错了吗?我能够在不同的公式上使用范围,所以不确定为什么这不起作用。

Sub if_after()

    Dim co_detail As Workbook
    Set co_detail = ThisWorkbook

        With co_detail.Sheets("Detail")

            For i = 2 To 100
                .Range("O2").Formula = "=IF(L" & i & "=N" & i & ",'good','update')"
            Next i

        End With

End Sub

最佳答案

那是零而不是哦,并且全引号用于文本。引号也必须在带引号的字符串中加倍。

.Range("o" & i).Formula = "=IF(L" & i & "=N" & i & ", ""good"", ""update"")"

关于excel - VBA IF公式不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51622356/

相关文章:

html - 使用 VBA 解析 HTML 内容

vba - 在工作簿中的所有工作表上应用相同的 VBA 代码

excel - 无法使用 MATCH 函数和 VBA 匹配范围内的日期

java - FOR 循环中的 StringIndexOutOfBoundsException

c++ - 将 array.size() 与负值进行比较时出现 if 条件的意外行为

java - Apache POI 解析和处理空单元格

VBA - 用复选框突出显示单元格

vba - 如何在 Powerpoint VBA 中运行宏 "OnEnterSlide"或 "OnLeaveSlide"?

Windows DLL 问题

Python:for if-else 之间的循环,这是如何/为什么工作的?