如何在工作表中的列之间映射值
How to map values between columns in worksheets
我有以下工作表
标尺文件A
https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing.
电子表格文件 B
https://docs.google.com/spreadsheets/d/1jjZEXSnskjiuZQdWYqnZGn4jwZS-6RUoY8sGacZq-88/edit?usp=sharing
我想用相应月份的工作表 A 中的值填充工作表 B。请注意,具有 0 值的月份被省略,因此在工作表 A 中没有设计为第 5 个月或第 10 个月。
如何映射工作表 B 和 A 之间的值?
更新
这是我最接近的,它将行从 WORKSHEET A 导入到 WORKSHEET B 并尝试将列与月份匹配,然后 return 匹配值。但没有将其映射到适当的列
=ARRAYFORMULA(HLOOKUP(MATCH(INDEX(ARRAYFORMULA(IMPORTRANGE("153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ","Cash Flow!A1:H3"))),A1:L3),A2:L3,2))
MS Excel 有一个名为 HLOOKUP 的函数,它可以满足您的需要。我在这里为你留下了一个例子:
https://d.docs.live.net/8af110ba68997b6e/Documents/HlookupExample.xlsx
这里有一个解释:https://support.office.com/en-us/article/HLOOKUP-function-a3034eec-b719-4ba3-bb65-e1ad662ed95f
一个简单的 INDEX/MATCH 就可以了:
=IFERROR(INDEX('Cash Flow'!2:2,MATCH(A,'Cash Flow'!1:1,0)),0)
放在第一个单元格,然后复制过来。
请注意,如果您的 sheet 位于不同的文件中,请将 'Cash Flow'!2:2
和 'Cash Flow'!1:1
替换为:
IMPORTRANGE("YourURLString","'Cash Flow'!2:2")
和
IMPORTRANGE("YourURLString","'Cash Flow'!1:1")
分别
实际公式:
=iferror(index(IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!3:3"),match(A,IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!2:2"),0)),0)
顺便说一句:HLOOKUP 也可以完成这项工作:
=IFERROR(HLOOKUP(A,'Cash Flow'!:,2,FALSE),0)
注意,如果您的 sheet 位于不同的文件中,请将 'Cash Flow'!:
替换为:
IMPORTRANGE("YourURLString","'Cash Flow'!1:2")
现在您已经分享了 sheet:
=IFERROR(HLOOKUP(A,IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!2:3"),2,FALSE),0)
另一种选择; SUMIF()
=SUMIF('Cash Flow'!1:1,A,'Cash Flow'!2:2)
这不适用于 google sheet 中的跨文件。
我的现金流量供参考:
我有以下工作表
标尺文件A https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing.
电子表格文件 B
https://docs.google.com/spreadsheets/d/1jjZEXSnskjiuZQdWYqnZGn4jwZS-6RUoY8sGacZq-88/edit?usp=sharing
我想用相应月份的工作表 A 中的值填充工作表 B。请注意,具有 0 值的月份被省略,因此在工作表 A 中没有设计为第 5 个月或第 10 个月。
如何映射工作表 B 和 A 之间的值?
更新
这是我最接近的,它将行从 WORKSHEET A 导入到 WORKSHEET B 并尝试将列与月份匹配,然后 return 匹配值。但没有将其映射到适当的列
=ARRAYFORMULA(HLOOKUP(MATCH(INDEX(ARRAYFORMULA(IMPORTRANGE("153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ","Cash Flow!A1:H3"))),A1:L3),A2:L3,2))
MS Excel 有一个名为 HLOOKUP 的函数,它可以满足您的需要。我在这里为你留下了一个例子: https://d.docs.live.net/8af110ba68997b6e/Documents/HlookupExample.xlsx
这里有一个解释:https://support.office.com/en-us/article/HLOOKUP-function-a3034eec-b719-4ba3-bb65-e1ad662ed95f
一个简单的 INDEX/MATCH 就可以了:
=IFERROR(INDEX('Cash Flow'!2:2,MATCH(A,'Cash Flow'!1:1,0)),0)
放在第一个单元格,然后复制过来。
请注意,如果您的 sheet 位于不同的文件中,请将 'Cash Flow'!2:2
和 'Cash Flow'!1:1
替换为:
IMPORTRANGE("YourURLString","'Cash Flow'!2:2")
和
IMPORTRANGE("YourURLString","'Cash Flow'!1:1")
分别
实际公式:
=iferror(index(IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!3:3"),match(A,IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!2:2"),0)),0)
顺便说一句:HLOOKUP 也可以完成这项工作:
=IFERROR(HLOOKUP(A,'Cash Flow'!:,2,FALSE),0)
注意,如果您的 sheet 位于不同的文件中,请将 'Cash Flow'!:
替换为:
IMPORTRANGE("YourURLString","'Cash Flow'!1:2")
现在您已经分享了 sheet:
=IFERROR(HLOOKUP(A,IMPORTRANGE("https://docs.google.com/spreadsheets/d/153trbK2CvrUbEiIF2YZlAhskBq4MqQCckxAxutPOnEQ/edit?usp=sharing","'Cash Flow'!2:3"),2,FALSE),0)
另一种选择; SUMIF()
=SUMIF('Cash Flow'!1:1,A,'Cash Flow'!2:2)
这不适用于 google sheet 中的跨文件。
我的现金流量供参考: