excel-formula - 向下拖动公式并更改列的引用(索引+匹配)
问题描述
我需要以下公式的帮助:
=INDEX(Sheet2!A2:A11,MATCH(Sheet1!Q5,Sheet2!C2:C11,0)+0)
(这部分需要更改列引用:Sheet2!C2:C11,0)+0)
每当我向下拖动它时,我都需要更改列引用。我试过这个:
=INDEX(Sheet2!$A$2:$A$12,MATCH(Sheet1!Q4,OFFSET(Sheet2!$A$2:$A$12,0,ROW(O$4:O4)-1),0)+0)
但它总是想出#N/A
我尝试了其他主题的解决方案,但找不到使用index
and的解决方案match
。
PS。我的公式从单元格开始O5
你能建议吗?
非常感谢
解决方案
一般来说,如果您想在向下拖动时更改列引用,请使用 and 的组合INDEX
,ROW
例如
= INDEX($1:$1,ROW())
当公式被向下拖动时,这将在第一行中进一步向右抓取值。
您还可以修改它以INDEX
返回一个范围(而不仅仅是一个单元格)以用作另一个公式的一部分,例如
= INDEX($1:$5,0,ROW())
这将返回一个 5x1 数组,该数组在公式被向下拖动时向右移动。(0
上式中的表示选择范围内的所有行$1:$5
。)
在您的公式中,您可以尝试替换它:
Sheet2!C2:C11
有了这个:
INDEX(Sheet2!$2:$11,0,ROW()+<offset>)
<offset>
您需要的必要偏移量在哪里。
如果您的公式开始于O5
并且您希望第一个公式获取该C
列,我想<offset>
应该是-2
. 这是因为ROW()
is O5
,5
但您希望该单元格获取第三列(因此您需要减去 2)。然后,当您向下拖动到 时O6
,公式的该部分将计算为Sheet2!D2:D11
,而在单元格O7
中,它将计算为Sheet2!E2:E11
,等等。
所以你的最终公式应该是:
= INDEX(Sheet2!A2:A11,MATCH(Sheet1!Q3,INDEX(Sheet2!$2:$11,0,ROW()-2),0)+0)
推荐阅读
- authentication - 从一个应用程序切换到另一个应用程序时,我需要保持用户身份验证。喜欢脸书和信使
- ios - 如何解决 Flutter 中的地理定位问题
- typescript - 使用静态成员扩展 TypeScript 中的类
- flutter - 是否可以在 Flutter 上使用 svg 动画?
- ios - 向模型对象添加错误是个好主意吗?
- apache-kafka - 如何处理 UnkownProducerIdException
- postgresql - 使用 POSTGIS 操作制作有效的大几何图形
- javascript - 静态下拉菜单在 Bootstrap 中不起作用
- amazon-web-services - 如何使用 terraform 在 LocalStack 上创建 EC2 实例?
- reactjs - 期望一个组件被渲染