【问题标题】:VBA Excel R1C1Formulas using cells methodVBA Excel R1C1公式使用单元格方法
【发布时间】:2012-01-08 21:08:29
【问题描述】:

我已经多次遇到这个问题,但仍然没有找到解决方案或为什么这不起作用。我想使用单元格方法通过列输入公式,所以我写了这个:(只是一个例子)

    With ws
        iEndCol = .cells(4650,1).End(Xlup).Column
        For i = 2 To iEndCol
            .Cells(i, 2) = "=VLOOKUP([RC-1],Somesheet!someTable,10,FALSE)"
        Next
    End With

当这不起作用时(方法错误)我尝试这样的事情:

    Cells(i,2).Select
    Do While IsEmpty(ActiveCell.Offset(0, -1)) = False
        ActiveCell.Formula = "=VLOOKUP([RC-1],Somesheet!someTable,10,FALSE))"
        ActiveCell.Offset(1, 0).Select
    Loop

或者代替 .Formula,我尝试使用 .FormulaR1C1、.Formulalocal 等,但这也不起作用。那么这就是有效的:

    Range("B2").Select
        Do Until IsEmpty(ActiveCell.Offset(0, 5)) And IsEmpty(ActiveCell.Offset(0, 6))
            If IsEmpty(ActiveCell) = False Then
                ActiveCell.Offset(0, 1).Formula = "=VLOOKUP(B2,Somesheet!someTable,10,FALSE)"
            End If
            ActiveCell.Offset(1, 0).Select
        Loop

使用单元格输入公式有什么不明白的地方?

【问题讨论】:

    标签: vba methods formula cells


    【解决方案1】:

    使用 Excel 界面(不是您的代码)输入公式。

    现在进入代码编辑器,按 Ctrl+G 并输入:? activecell.FormulaR1C1

    结果,=VLOOKUP(RC[-1],Somesheet!sometable,10,FALSE),会告诉你你做错了什么。您没有提供正确的 RC 语法。

    话虽如此,您应该始终确保您的公式语法与您为设置该公式而选择的属性相匹配。 .Formula 使用 A1 表示法,FormulaR1C1 使用 RC 表示法。并且不要使用.Value 设置公式。

    【讨论】:

      【解决方案2】:

      首先,以下对我有用:

      Set oCell = ActiveCell
      
      Do
          Set oCell = oCell.Offset(0, 1)
          oCell.FormulaR1C1 = "=VLOOKUP(RC[-1],SomeTable,10,FALSE)"
          Set oCell = oCell.Offset(1, -1)
      Loop Until IsEmpty(oCell)
      

      请注意,在我的语法中,我假设 SomeTable 是一个具有工作簿范围的已定义名称,因此我不需要前缀。如果SomeTable 是一个定义在特定工作表范围内的名称,那么您只需要在工作表名称前加上前缀(例如Somesheet!SomeTable)。

      其次,您应该使用Debug.Print oCell.Address 验证它尝试将公式放入哪个单元格。可能是它试图将公式直接填充到第一列中,这会导致公式出错。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-04-18
        • 2022-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多