VLOOKUP()
bekerja dengan mencari argumen pertama di kolom pertama dari rentang yang ditentukan dalam argumen kedua.
Kolom pertama argumen kedua Anda harus menjadi ITEM
kolom, bukan kolom pertama dari tabel.
Formula yang dikoreksi BQ20
adalah:
=IF(VLOOKUP(BQ5,Table11[DATE],1,FALSE),VLOOKUP('SUMMARY (NEW)'!B20,Table11[[ITEM]:[COST]],5,FALSE),"")
Namun, formula ini secara fundamental masih cacat. Itu tidak akan mengambil item yang benar berdasarkan tanggal karena tidak ada, dan tidak pernah bisa menjadi, tautan antara keduanya VLOOKUP()
. (Berusaha untuk melakukannya adalah apa yang menyebabkan #N/A
kesalahan.)
Satu solusi untuk ini menggunakan array dan SUMPRODUCT()
fungsinya:
=SUMPRODUCT(Table11[COST]*(Table11[DATE]=$BQ$5)*(Table11[ITEM]=$B20))
Peringatan:
Kedua keterbatasan ini dapat diatasi dengan versi formula yang lebih kompleks.
SUNTING:
Seperti yang telah ditemukan OP, ada rumus setara dengan yang di atas yang menggunakan SUMIFS()
alih-alih SUMPRODUCT()
:
=SUMIFS(Table11[COST],Table11[DATE],$BQ$5,Table11[ITEM],$B20)
Peringatan yang sama berlaku untuk formula ini juga.
Ada solusi alternatif yang tidak digunakan VLOOKUP()
, tetapi membutuhkan kolom penolong.
Tambahkan kolom pembantu ke Tabel entri harian:
Masukkan rumus berikut di semua sel Helper
kolom:
=Table11[[#This Row],[DATE]]&Table11[[#This Row],[ITEM]]
Masukkan formula berikut di BQ20
:
=VLOOKUP($BQ$5&$B20,Table11[[Helper]:[COST]],9,FALSE)
Perhatikan bahwa rumus ini berfungsi dengan benar dengan nilai-nilai non-angka dan barang-barang non-unik, sebagaimana adanya.