Excel 基于数据库的多个相关下拉列表

Excel 基于数据库的多个相关下拉列表,excel,drop-down-menu,vba,Excel,Drop Down Menu,Vba,我有一个元件成本的Excel数据库,该数据库在表格中列出如下 供应商-类别-组件-价格 供应商A A类部件A$5.00 供应商A A类部件B$8.00 供应商A B类部件A$9.00 供应商A B类部件B$11.00 供应商B A类部件A$14.00 供应商B C类部件A$14.00 供应商B C类部件B$17.00 供应商B D类部件A$6.00 供应商C C类部件C$7.00 供应商C D类部件A$4.00 供应商C D类部件B$12.00 我想做的是让一个用户进来,构建一个由不同组件组成的

我有一个元件成本的Excel数据库,该数据库在表格中列出如下

供应商-类别-组件-价格

供应商A A类部件A$5.00

供应商A A类部件B$8.00

供应商A B类部件A$9.00

供应商A B类部件B$11.00

供应商B A类部件A$14.00

供应商B C类部件A$14.00

供应商B C类部件B$17.00

供应商B D类部件A$6.00

供应商C C类部件C$7.00

供应商C D类部件A$4.00

供应商C D类部件B$12.00

我想做的是让一个用户进来,构建一个由不同组件组成的设备。该用户将使用下拉列表选择供应商,然后使用另一个下拉列表选择类别,最后使用另一个下拉列表选择组件。(即基于供应商和类别)根据这些,价格也将填入表中

空床单看起来像这样

供应商------类型------部件------成本------数量------扩展成本

(下拉)--(下拉)--(下拉)--VLOOKUP

填充价格似乎并不难,除非它基于多个标准。非常感谢。我的主要问题是1)从具有多个重复的列创建下拉列表,因为它是数据库格式;2)使用多个相关下拉列表


谢谢大家!

假设数据列表中没有重复项(例如,
供应商A A类组件A
不能出现两次)

Sumproduct或SUMIFS(取决于excel版本)为您提供值

SUMIFS
当供应商等于A2,类别/类型等于B2,组件等于C2时,Sumifs将返回价格

=SUMIFS(Data!D:D,Data!A:A,A2,Data!B:B,B2,Data!C:C,C2)
SUMPRODUCT
Sumproduct在固定大小范围内工作得更好,因为乘以16384或1000000+行需要更长的时间

=SUMPRODUCT(Data!D1:D999,--(Data!A1:A999=A2),--(Data!B1:B999=B2),--(Data!C1:C999=C2))

无论您的数据库是什么,设计应该允许您用不同的值填充下拉列表!该数据库只是一个Excel数据库。