首页 文章

为什么VBA放'range'而不仅仅是范围

提问于
浏览
1

使用VBA将公式放入单元格中

Range("H2").Select
    ActiveCell.FormulaR1C1 = _
        "=IFERROR(VLOOKUP(RC[-6],CompanyUserEntries!B2:X" & URowCount & ",1,TRUE),"""")"

但Excel最终将其转化为此

=IFERROR(VLOOKUP(B2;CompanyUserEntries!'B2':'X12';1;TRUE);"")

范围内的符号导致公式不起作用 . 知道如何在不破坏我的公式的情况下正确引用这个范围吗?

2 回答

  • 1

    您不能在同一公式中混合使用R1C1和A1表示法 . 尝试仅使用R1C1表示法:

    ActiveCell.FormulaR1C1 = _
    "=IFERROR(VLOOKUP(RC[-6],CompanyUserEntries!R2C2:R" & URowCount & "C24,1,TRUE),"""")"
    
  • 5

    你尝试过使用RC吗?

    "R2C2:R" & URowCount & "C24"

    这对你有用 .

    ActiveCell.FormulaR1C1 = _
            "=IFERROR(VLOOKUP(RC[-6],CompanyUserEntries!R2C2:R" & URowCount & "C24,1,TRUE),"""")"
    

相关问题