我对 Excel 还不太熟悉,但需要制作一个 Excel 工作表,在其中可以选择商品名称,这样当所选商品发生变化时,列中的所有值(价格)也会发生变化。一旦输入数量时值发生变化,它就会计算成本。
我确实在 20 张不同的工作表中进行了此项工作,但我希望能够仅在一张工作表中完成此项工作。
注意:每个选定的项目都有大约 100 个不同的子项目,这就是为什么我需要下拉列表来覆盖具有预设值的列。
我该如何处理这个问题?
编辑不是由 OP 进行的,而是从评论中提供的链接添加图片
答案1
假设数据布局如D:U etc
示例所示,并A1
根据列表进行验证,$G$2:$G$6
然后:
在A2
: =SUM(B3:B1048576)
{如果是早期版本的 Excel,则小于 1048576}
在A3
:=IFERROR(VLOOKUP($A$1,Table1[#All],ROW()-1,FALSE),"")
和
在B3
:=IFERROR(VLOOKUP(A3,D:E,2,FALSE),"")
(后两者尽可能地向下复制)应B1
根据从中选择的项目计算出子项目的总成本A1
。
希望可以(小心)添加项目和子项目而无需调整任何公式,只要A:B
在必要时扩展中的表格以确保在中数组底部至少有一个空白(但有阴影并包含公式)单元格ColumnA
。
根据进一步信息进行了修订
为了将数据和计算保存在不同的表格中,请按如下方式命名范围:
在新表(根据需要添加标签)中B4
输入:
=INDEX(prices,MATCH(A4,cabinets,0)+2,MATCH(B3,items,0)+1)
并添加列表验证如下:
为B3
: 来源:=items
为A4
: 来源:=cabinets
输入D4
:=B4*C4
根据需要尽可能多地向下复制第 3 行到第 5 行,并为第 D 列添加总数。