首页 文章

在Excel宏中指定工作表中的单元格

提问于
浏览
1

我正在编写一个Excel宏,并有一个类似下面的部分,我在一个名为“daf”的工作表中查看一列,并将其与另一个工作表中的单元格进行比较:

For i = 2 To 75
    If Range("the daf!C" + Trim(Str(i))) = Range("scratchpad!Q30") Then
        notes = notes + Range("scratchpad!P30")
        Exit For
    End If
Next

问题是它产生了“#Value!”的结果 . 问题似乎是我在工作表名称中有一个空格,因为当我用“暂存器”替换“daf”时,它不会产生错误 . 如果我所说的是正确的,那么当工作表的名称包含空格时,如何在工作表中引用单元格?

1 回答

  • 2

    使用

    Sheets("the daf").Range("C" & i)
    

    代替

    Range("the daf!C" + Trim(Str(i)))
    

    例:

    If Sheets("the daf").Range("C" & i).Value = Sheets("scratchpad").Range("Q30").Value Then

    EDIT

    如果您仍想使用您正在使用的方法,请尝试此操作

    Range("'the" & " " & "daf'!C" & i)
    

相关问题