Excel IFERROR,索引匹配公式的参数太多

Excel IFERROR,索引匹配公式的参数太多,excel,indexing,Excel,Indexing,我试图根据客户编号在26页的spreedsheet中查找数据。每张纸上都贴上了字母的标签,以便对姓氏进行组织。每张图纸都有下表: Surname | Forename | Client Number | Daily Ticket Count | Monthly Ticket Count | Ticket No | Date | Ticket No2 | Date | Ticket No3 | Date | Ticket No4 | Date | Ticket No 5 | Date 我正在按

我试图根据客户编号在26页的spreedsheet中查找数据。每张纸上都贴上了字母的标签,以便对姓氏进行组织。每张图纸都有下表:

Surname | Forename | Client Number | Daily Ticket Count | Monthly Ticket Count |
Ticket No | Date | Ticket No2 | Date | Ticket No3 | Date | Ticket No4 | Date | 
Ticket No 5 | Date
我正在按客户号搜索以提取所有指定的票证。下面的公式仅用于检查票据编号,然后在另一个单元格中有另一个公式用于搜索票据编号2。重复3到5张票

这是我目前的公式。我本来打算在每张A-Z图纸上重复这一点,但这显然是不可行的。是否仍然可以通过使用另一个函数来执行此操作,如果可以,是什么函数

=IFERROR(INDEX(A!F2:F36,(MATCH($B12,A!C2:C36,0))),INDEX(B!F2:F36,(MATCH($B12,B!C2:C36,0))),
 INDEX(C!F2:F36,(MATCH($B12,C!C2:C36,0))))
你怎么了

=IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(IFERROR(VLOOKUP($B12,A!C:F,4,FALSE),VLOOKUP($B12,B!C:F,4,FALSE)),VLOOKUP($B12,C!C:F,4,FALSE)),VLOOKUP($B12,D!C:F,4,FALSE)),VLOOKUP($B12,E!C:F,4,FALSE)),VLOOKUP($B12,F!C:F,4,FALSE)),VLOOKUP($B12,G!C:F,4,FALSE)),VLOOKUP($B12,H!C:F,4,FALSE)),VLOOKUP($B12,I!C:F,4,FALSE)),VLOOKUP($B12,J!C:F,4,FALSE)),VLOOKUP($B12,K!C:F,4,FALSE)),VLOOKUP($B12,L!C:F,4,FALSE)),VLOOKUP($B12,M!C:F,4,FALSE)),VLOOKUP($B12,N!C:F,4,FALSE)),VLOOKUP($B12,O!C:F,4,FALSE)),VLOOKUP($B12,P!C:F,4,FALSE)),VLOOKUP($B12,Q!C:F,4,FALSE)),VLOOKUP($B12,R!C:F,4,FALSE)),VLOOKUP($B12,S!C:F,4,FALSE)),VLOOKUP($B12,T!C:F,4,FALSE)),VLOOKUP($B12,U!C:F,4,FALSE)),VLOOKUP($B12,V!C:F,4,FALSE)),VLOOKUP($B12,W!C:F,4,FALSE)),VLOOKUP($B12,X!C:F,4,FALSE)),VLOOKUP($B12,Y!C:F,4,FALSE)),VLOOKUP($B12,Z!C:F,4,FALSE))

这是一个用于相同任务的VBA解决方案,对于您来说,它是
=ertdfgcvb($B12,C1;F1;Arry1)
其中
Arry1
是一个包含图纸名称的范围,按您的首选顺序排列

Public Function ertdfgcvb(Lookup_val As Variant, Lookup_col As Range, Grab_col As Range, ShtArr As Range)
Dim ws As Worksheet, rng As Range

Find1 = Lookup_col.Column
Grab1 = Grab_col.Column

On Error Resume Next
For Each rng In ShtArr
    Set ws = Sheets(rng.Value2)
    ertdfgcvb = Application.WorksheetFunction.VLookup(Lookup_val, ws.Columns(Find1), ws.Columns(Grab1))
    Exit Function
Next
End Function

如果有100张表格,你只需要再加上74条IFERROR条款?我不会,但OP比我懒。我不会说懒,但绝对受够了这个该死的电子表格。这就是说,这是可行的,我只需要通过和改变,以获得其他4票号码在不同的细胞。干杯。制作一个VBA来炫耀,@XOR LX可以随意使用它。我的业务是尽可能提供VBA的替代品!干杯!早晨您是否可以粘贴仅突出显示此部分的结果的完整数组:间接(“”)&INDEX(Sheets,MATCH(TRUE,Arry1>=行($‌​1:1)、0)和“!C3:C100”)=“测试”并按F9?它应该是一个由98个布尔真/假返回组成的数组。如果您对生成的字符串进行查找和替换,用T替换所有的True,用F替换所有的False,那么在节省空间/易读性方面可能会更好。我实际上设置了早些时候发布的mass-IFERROR-spam公式,并在今天上午进行了调整以使用索引匹配。今天早上我有一个截止日期,所以我恐怕没有时间继续摆弄来让它工作。再次感谢你花的时间,我真的很感激。不客气,很抱歉我没能及时让它为你工作。