【问题标题】:Excel-how to lock down "table array" values in vlookup, columns numberedExcel-如何在 vlookup 中锁定“表数组”值,列编号
【发布时间】:2018-07-19 03:49:27
【问题描述】:

我在工作场所使用 Excel 2013,并且单元格列按编号而不是按字母顺序排列。

考虑到这一点,这些是我的 表格数组值,用于我的 vlookup 公式,当我使用鼠标突出显示表格区域时,它会自动为我填充。

Sheet1!R[2]C[-3]:R[6]C[-2]

我如何锁定这些值? 我试过像

Sheet1!$R$[2]$C$[-3]:$R$[6]$C$[-2] 但它不起作用。

这是我的当前的 vlookup 公式

=VLOOKUP(RC[-1],Sheet1!R[2]C[-3]:R[6]C[-2],2,FALSE)

下面是我试图引用的表数组源。

请指教!谢谢!


回答:下面是我现在使用的公式:

=VLOOKUP(RC[-1],Sheet1!R4C1:R8C2,2,FALSE)

它被锁定了:-)

【问题讨论】:

  • 不带括号的R1C1是绝对的
  • 谢谢@QHarr!

标签: excel vlookup


【解决方案1】:

您可以通过在 Excel 选项中更改此设置来改回按字母顺序排列的列:

【讨论】:

    【解决方案2】:

    在 R1C1 表示法中,您忽略了绝对值的方括号或包含相对值的括号(数字周围)。

    参考资料:

    R1C1, the unused Excel cell reference system

    另见讨论here

    MSDN Address Property:

    示例 下面的示例显示了四种不同的表示形式 Sheet1 上相同的单元格地址。示例中的 cmets 是 将显示在消息框中的地址。

    Set mc = Worksheets("Sheet1").Cells(1, 1)
    MsgBox mc.Address()                              ' $A$1
    MsgBox mc.Address(RowAbsolute:=False)            ' $A1
    MsgBox mc.Address(ReferenceStyle:=xlR1C1)        ' R1C1
    MsgBox mc.Address(ReferenceStyle:=xlR1C1, _
        RowAbsolute:=False,     _
        ColumnAbsolute:=False,  _
        RelativeTo:=Worksheets(1).Cells(3, 3))        ' R[-2]C[-2]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      相关资源
      最近更新 更多