函数太菜了,只好偷山菊花老师的精华贴的函数
http://club.excelhome.net/viewthread.php?tid=160679&highlight=%CA%FD%BE%DD%D3%D0%D0%A7%D0%D4%2B%C9%BD%BE%D5%BB%A8
菜谱表使用三个辅助列:
C列辅助列,填充公式范围:C2:C86;填充的公式:C2输入:
=IF(COUNTIF(A2,"*"&$D$2&"*")>0,ROW(),"")
下拉填充.
D列辅助列,D2输入:
=INDIRECT(CELL("address"))
E列辅助列:填充公式范围:E1:E85;(只填充到E85是因为实际上要引用的只需要85行),E1输入:
=IF(SMALL(C:C,ROW())>MAX(C:C),"",INDEX(A:A,SMALL(C:C,ROW())))
下拉填充.
定义名称TT,TT=IF(ISERROR(菜谱!$E$1),"",菜谱!$E$1:INDEX(菜谱!$E:$E,COUNTIF(菜谱!$E:$E,"*")))
在点菜单表中,
选中B3,设置数据有效性,在出错警告处取消勾选"输入无效数据时显示出错警告",在设置中,有效性条件选中序列,输入定义的名称:=TT,确定后,选中B3下拉填充.
选中B4,输入:
=IF(B3="","",IF(ISERROR(VLOOKUP(点菜单!B3,菜谱!$A:$B,2,0)),"",VLOOKUP(点菜单!B3,菜谱!$A:$B,2,0)))
下拉填充. |