vba - 我有这个引用的类型不匹配错误

标签 vba excel for-loop if-statement

这是我遇到问题的代码。当B列中相应行中的值为氘时,我只是尝试将值“0”输入到G列中。调试器告诉我我的错误在于包含 If 语句的行。

For i = 3 To 30
    If Worksheets("Master PEC").Cells(i, 2) = "Deuterium" Then
        Worksheets("Master PEC").Cells(i, 7).Value = 0
    End If
Next

截屏:

screenshot

最佳答案

您不能将错误等同于字符串。

您将需要添加一个检查以不测试错误。

For i = 3 To 30
    If Not IsError(Worksheets("Master PEC").Cells(i, 2)) Then
        If Worksheets("Master PEC").Cells(i, 2) = "Deuterium" Then
            Worksheets("Master PEC").Cells(i, 7).Value = 0
        End IF
    End If
Next

关于vba - 我有这个引用的类型不匹配错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45825208/

相关文章:

vba - 两个数字之间的随机数 "gaps"

vba - 计算机开机时自动运行宏

Excel 宏对 1000 多个数据运行异常

Excel - 工作簿很慢并且经常崩溃

excel - 对行中单元格中具有特定值的列中的单元格进行求和

java - 我需要打印一个等于该单词中字符数的单词

python - 许多for在python生成器中的一行中

vba - 使用 VBA 自动单击消息框

python - 使用 for 循环执行乘法变量的方法

excel - 将数据模型数据用于单元格公式