Предположим, что есть 2 файла Excel:
во-первых, это
expenses amount
CCL 12usd
FFL 25usd
CCL 12usd
FFL 25usd
FCL 10usd
во-вторых, это
name id expenses
A 12 CCL
B 13 FCL
C 14 FFL
D 15 CCL
Я хочу отфильтровать первый файл по типу расходов, например: «CCL» и найти информацию из второго файла с соответствующим типом расходов.
И получите следующие результаты в другой таблице:
name id expenses amount
A 12 CCL 12usd
D 15 CCL 12usd
Я пока не знаком с VBA, но возможно ли написать макрос для автоматизации процедуры? Заранее спасибо.
решение1
Напишите «CCL» в ячейке A1 вашей третьей рабочей тетради.
Множествоформулы вводятся не с помощью обычных Enter, а с помощью Ctrl+ Shift+ Enter.
У А3 есть этомножествоформула:
=IFERROR(INDEX('C:\Temp\[Book2.xlsx]Sheet1'!$A$1:$A$5,SMALL(IF('C:\Temp\[Book2.xlsx]Sheet1'!$C$1:$C$5=$A$1,ROW('C:\Temp\[Book2.xlsx]Sheet1'!$C$1:$C$5),""),ROW(A1))),"")
У B3 есть этомножествоформула:
=IFERROR(INDEX('C:\Temp\[Book2.xlsx]Sheet1'!$B$1:$B$5,SMALL(IF('C:\Temp\[Book2.xlsx]Sheet1'!$C$1:$C$5=$A$1,ROW('C:\Temp\[Book2.xlsx]Sheet1'!$C$1:$C$5),""),ROW(A1))),"")
C3 имеет следующую формулу:
=IF(A3<>"",$A$1,"")
У D3 есть этомножествоформула:
=IFERROR(INDEX('C:\Temp\[Book1.xlsx]Sheet1'!$B$1:$B$6,MATCH(C3,'C:\Temp\[Book1.xlsx]Sheet1'!$A$1:$A$6,0)),"")