Isi kandungan
Dalam tutorial ini, anda akan menemui beberapa contoh formula yang menunjukkan penggunaan INDEX yang paling cekap dalam Excel.
Daripada semua fungsi Excel yang kuasanya sering dipandang rendah dan kurang digunakan, INDEX pasti akan berada di kedudukan 10 teratas. Sementara itu, fungsi ini pintar, fleksibel dan serba boleh.
Jadi, apakah fungsi INDEX dalam Excel? Pada asasnya, formula INDEX mengembalikan rujukan sel dari dalam tatasusunan atau julat tertentu. Dalam erti kata lain, anda menggunakan INDEX apabila anda mengetahui (atau boleh mengira) kedudukan elemen dalam julat dan anda ingin mendapatkan nilai sebenar elemen tersebut.
Ini mungkin kedengaran agak remeh, tetapi sekali anda menyedari potensi sebenar fungsi INDEX, ia boleh membuat perubahan penting pada cara anda mengira, menganalisis dan mempersembahkan data dalam lembaran kerja anda.
Fungsi INDEX Excel - sintaks dan kegunaan asas
Terdapat dua versi fungsi INDEX dalam Excel - bentuk tatasusunan dan borang rujukan. Kedua-dua borang boleh digunakan dalam semua versi Microsoft Excel 365 - 2003.
Borang tatasusunan INDEX
Borang tatasusunan INDEX mengembalikan nilai elemen tertentu dalam julat atau tatasusunan berdasarkan baris dan nombor lajur yang anda tentukan.
INDEX(array, row_num, [column_num])- array - ialah julat sel, julat bernama atau jadual.
- row_num - ialah nombor baris dalam tatasusunan untuk mengembalikan nilai. Jika nombor_baris ialahmengembalikan nilai, tetapi dalam formula ini, pengendali rujukan (:) memaksanya untuk mengembalikan rujukan). Dan kerana $A$1 ialah titik permulaan kami, hasil akhir formula ialah julat $A$1:$A$9.
Tangkapan skrin berikut menunjukkan cara anda boleh menggunakan formula Indeks tersebut untuk mencipta penurunan dinamik- senarai bawah.
Petua. Cara paling mudah untuk membuat senarai juntai bawah yang dikemas kini secara dinamik adalah dengan membuat senarai bernama berdasarkan jadual. Dalam kes ini, anda tidak memerlukan sebarang formula kompleks kerana jadual Excel ialah julat dinamik per se.
Anda juga boleh menggunakan fungsi INDEX untuk membuat senarai lungsur turun bergantung dan tutorial berikut menerangkan langkah-langkah: Membuat senarai lungsur turun dalam Excel.
5. Vlookups berkuasa dengan INDEX / MATCH
Melaksanakan carian menegak - di sinilah fungsi INDEX benar-benar bersinar. Jika anda pernah mencuba menggunakan fungsi Excel VLOOKUP, anda amat mengetahui tentang banyak batasannya, seperti ketidakupayaan untuk menarik nilai dari lajur ke kiri lajur carian atau had 255 aksara untuk nilai carian.
The INDEX / MATCH liaison adalah lebih baik daripada VLOOKUP dalam banyak aspek:
- Tiada masalah dengan vlookup kiri.
- Tiada had pada saiz nilai carian.
- Tiada pengisihan adalah diperlukan (VLOOKUP dengan anggaran padanan memerlukan mengisih lajur carian dalam tertib menaik).
- Anda bebas untuk memasukkan dan mengalih keluar lajur dalam jadual tanpa mengemas kinisetiap formula yang berkaitan.
- Dan yang terakhir sekali, INDEX / MATCH tidak melambatkan Excel anda seperti yang dilakukan oleh beberapa Vlookup.
Anda menggunakan INDEX / MATCH dengan cara berikut :
=INDEX ( lajur untuk mengembalikan nilai daripada , (MATCH ( nilai carian , lajur untuk mencari terhadap , 0))Untuk contoh, jika kita menyelak jadual sumber kami supaya Nama Planet menjadi lajur paling kanan, formula INDEX / MATCH masih mengambil nilai yang sepadan dari lajur sebelah kiri tanpa sebarang halangan.
Untuk lebih banyak petua dan contoh formula, sila lihat tutorial Excel INDEX / MATCH.
6. Formula Excel INDEX untuk mendapatkan 1 julat daripada senarai julat
Satu lagi penggunaan fungsi INDEX yang bijak dan berkuasa dalam Excel ialah keupayaan untuk mendapatkan satu julat daripada senarai julat.
Andaikan, anda mempunyai beberapa senarai dengan bilangan item yang berbeza dalam setiap satu. Percayalah atau tidak, anda boleh mengira purata atau menjumlahkan nilai dalam mana-mana julat yang dipilih dengan formula tunggal.
Mula-mula, anda mencipta e julat dinamakan untuk setiap senarai; biarkan ia menjadi PlanetsD dan MoonsD dalam contoh ini:
Saya harap imej di atas menerangkan alasan di sebalik nama julat :) BTW, jadual Bulan masih jauh dari lengkap, terdapat 176 bulan semula jadi yang diketahui dalam Sistem Suria kita, Musytari sahaja mempunyai 63 bulan pada masa ini, dan semakin meningkat. Untuk contoh ini, saya memilih 11 secara rawak, baik... mungkin tidak begitu rawak -bulan dengan nama yang paling indah : )
Maafkan penyelewengan, kembali kepada formula INDEX kami. Dengan mengandaikan bahawa PlanetsD ialah julat 1 anda dan MoonsD ialah julat 2, dan sel B1 ialah tempat anda meletakkan nombor julat, anda boleh menggunakan formula Indeks berikut untuk mengira purata nilai dalam julat dinamakan yang dipilih:
=AVERAGE(INDEX((PlanetsD, MoonsD), , , B1))
Sila ambil perhatian bahawa kini kami menggunakan borang Rujukan bagi fungsi INDEX dan nombor dalam argumen terakhir (area_num) memberitahu formula yang julat kepada pilih.
Dalam tangkapan skrin di bawah, area_num (sel B1) ditetapkan kepada 2, jadi formula mengira diameter purata Bulan kerana julat MoonsD datang ke-2 dalam hujah rujukan.
Jika anda bekerja dengan berbilang senarai dan tidak mahu bersusah payah mengingati nombor yang berkaitan, anda boleh menggunakan fungsi IF bersarang untuk melakukan ini untuk anda :
=AVERAGE(INDEX((PlanetsD, MoonsD), , , IF(B1="planets", 1, IF(B1="moons", 2))))
Dalam fungsi IF, anda menggunakan beberapa nama senarai yang ringkas dan mudah diingat yang anda mahu pengguna anda menaip dalam sel B1 dan bukannya nombor. Sila ingat perkara ini, agar formula berfungsi dengan betul, teks dalam B1 hendaklah betul-betul sama (tidak peka huruf besar-besaran) seperti dalam parameter IF, jika tidak, formula Indeks anda akan membuang ralat #VALUE.
Untuk menjadikan formula lebih mesra pengguna, anda boleh menggunakan Pengesahan Data untuk membuat senarai juntai bawah dengan nama yang telah ditetapkan untuk mengelakkan ralat ejaan dansalah cetak:
Akhir sekali, untuk menjadikan formula INDEX anda benar-benar sempurna, anda boleh menyertakannya dalam fungsi IFERROR yang akan menggesa pengguna memilih item daripada senarai juntai bawah jika tiada pilihan dibuat lagi:
=IFERROR(AVERAGE(INDEX((PlanetsD, MoonsD), , , IF(B1="planet", 1, IF(B1="moon", 2)))), "Please select the list!")
Beginilah cara anda menggunakan formula INDEX dalam Excel. Saya berharap contoh ini menunjukkan kepada anda cara untuk memanfaatkan potensi fungsi INDEX dalam lembaran kerja anda. Terima kasih kerana membaca!
diabaikan, bilangan_lajur diperlukan. - nombor_lajur - ialah nombor lajur untuk mengembalikan nilai. Jika bilangan_lajur ditinggalkan, nombor_baris diperlukan.
Sebagai contoh, formula =INDEX(A1:D6, 4, 3)
mengembalikan nilai pada persimpangan baris ke-4 dan lajur ke-3 dalam julat A1:D6, iaitu nilai dalam sel C4 .
Untuk mendapatkan idea tentang cara formula INDEX berfungsi pada data sebenar, sila lihat contoh berikut:
Daripada memasukkan baris dan nombor lajur dalam formula, anda boleh membekalkan rujukan sel untuk mendapatkan formula yang lebih universal: =INDEX($B$2:$D$6, G2, G1)
Jadi, formula INDEX ini mengembalikan bilangan item tepat pada persimpangan nombor produk yang dinyatakan dalam G2 (row_num ) dan nombor minggu dimasukkan dalam sel G1 (column_num).
Petua. Penggunaan rujukan mutlak ($B$2:$D$6) dan bukannya rujukan relatif (B2:D6) dalam hujah tatasusunan memudahkan untuk menyalin formula ke sel lain. Sebagai alternatif, anda boleh menukar julat kepada jadual ( Ctrl + T ) dan merujuknya dengan nama jadual.
Borang tatasusunan INDEX - perkara yang perlu diingat
- Jika argumen tatasusunan hanya terdiri daripada satu baris atau lajur, anda boleh atau tidak boleh menentukan argumen baris_num atau lajur yang sepadan.
- Jika hujah tatasusunan termasuk lebih daripada satu baris dan row_num diabaikan atau ditetapkan kepada 0, fungsi INDEX mengembalikan tatasusunan keseluruhan lajur. Begitu juga, jika tatasusunan termasuk lebih daripada satulajur dan hujah column_num diabaikan atau ditetapkan kepada 0, formula INDEX mengembalikan keseluruhan baris. Berikut ialah contoh formula yang menunjukkan tingkah laku ini.
- Argumen row_num dan column_num mesti merujuk kepada sel dalam tatasusunan; jika tidak, formula INDEX akan mengembalikan #REF! ralat.
Borang rujukan INDEX
Borang rujukan fungsi Excel INDEX mengembalikan rujukan sel di persimpangan baris dan lajur yang ditentukan.
INDEX(rujukan, row_num , [nombor_lajur], [nombor_kawasan] )- rujukan - ialah satu atau beberapa julat.
Jika anda memasukkan lebih daripada satu julat, pisahkan julat dengan koma dan sertakan hujah rujukan dalam kurungan, contohnya (A1:B5, D1:F5).
Jika setiap julat dalam rujukan mengandungi hanya satu baris atau lajur, argumen row_num atau column_num yang sepadan adalah pilihan.
- row_num - nombor baris dalam julat untuk mengembalikan rujukan sel, ia serupa dengan tatasusunan borang.
- column_num - nombor lajur untuk mengembalikan rujukan sel, juga berfungsi sama dengan borang tatasusunan.
- area_num - an parameter pilihan yang menentukan julat mana daripada hujah rujukan untuk digunakan. Jika diabaikan, formula INDEX akan mengembalikan hasil untuk julat pertama yang disenaraikan dalam rujukan.
Sebagai contoh, formula =INDEX((A2:D3, A5:D7), 3, 4, 2)
mengembalikan nilai sel D7, yang berada dipersilangan baris ke-3 dan lajur ke-4 di kawasan kedua (A5:D7).
Borang rujukan INDEKS - perkara yang perlu diingat
- Jika argumen row_num atau column_num ditetapkan kepada sifar (0), formula INDEX mengembalikan rujukan untuk keseluruhan lajur atau baris, masing-masing.
- Jika kedua-dua row_num dan column_num diabaikan, fungsi INDEX mengembalikan kawasan yang dinyatakan dalam argumen area_num.
- Semua argumen _num (nombor_baris, bilangan_lajur dan bilangan_luas) mesti merujuk kepada sel dalam rujukan; jika tidak, formula INDEX akan mengembalikan #REF! ralat.
Kedua-dua formula INDEX yang telah kita bincangkan setakat ini adalah sangat mudah dan hanya menggambarkan konsep. Formula sebenar anda mungkin jauh lebih kompleks daripada itu, jadi mari kita terokai beberapa kegunaan INDEX dalam Excel yang paling berkesan.
Cara menggunakan fungsi INDEX dalam Excel - contoh formula
Mungkin ada bukankah banyak kegunaan praktikal Excel INDEX dengan sendirinya, tetapi digabungkan dengan fungsi lain seperti MATCH atau COUNTA, ia boleh menghasilkan formula yang sangat berkuasa.
Data sumber
Semua formula INDEX kami (kecuali yang terakhir), kami akan menggunakan data di bawah. Untuk tujuan kemudahan, ia disusun dalam jadual bernama SourceData .
Penggunaan jadual atau julat bernama boleh membuat formula sedikit lebih lama, tetapi ia juga menjadikannya lebih fleksibel dan lebih mudah dibaca. Untuk melaraskan mana-mana INDEXformula untuk lembaran kerja anda, anda hanya perlu mengubah suai satu nama, dan ini melengkapkan sepenuhnya panjang formula yang lebih panjang.
Sudah tentu, tiada apa yang menghalang anda daripada menggunakan julat biasa jika anda mahu. Dalam kes ini, anda hanya menggantikan nama jadual SourceData dengan rujukan julat yang sesuai.
1. Mendapatkan item Nth daripada senarai
Ini ialah penggunaan asas fungsi INDEX dan formula paling mudah untuk dibuat. Untuk mengambil item tertentu daripada senarai, anda cuma tulis =INDEX(range, n)
dengan julat ialah julat sel atau julat bernama dan n ialah kedudukan item yang anda ingin dapatkan.
Apabila bekerja dengan jadual Excel, anda boleh memilih lajur menggunakan tetikus dan Excel akan menarik nama lajur bersama-sama dengan nama jadual dalam formula:
Untuk mendapatkan nilai sel di persimpangan baris dan lajur tertentu, anda menggunakan pendekatan yang sama dengan satu-satunya perbezaan yang anda tentukan kedua-duanya - nombor baris dan nombor lajur. Malah, anda sudah melihat formula sedemikian dalam tindakan apabila kita membincangkan bentuk tatasusunan INDEX.
Dan berikut ialah satu lagi contoh. Dalam jadual sampel kami, untuk mencari planet ke-2 terbesar dalam sistem Suria, anda mengisih jadual mengikut lajur Diameter dan menggunakan formula INDEX berikut:
=INDEX(SourceData, 2, 3)
-
Array
ialah nama jadual atau rujukan julat, SourceData dalam contoh ini. -
Row_num
ialah 2 kerana anda sedang mencari item keduadalam senarai, yang berada dalam lajur ke-2 -
Column_num
ialah 3 kerana Diameter ialah lajur ke-3 dalam jadual.
Jika anda mahu mengembalikan planet itu nama daripada diameter, tukar column_num kepada 1. Dan secara semulajadi, anda boleh menggunakan rujukan sel dalam argumen row_num dan/atau column_num untuk menjadikan formula anda lebih serba boleh, seperti yang ditunjukkan dalam tangkapan skrin di bawah:
2. Mendapatkan semua nilai dalam baris atau lajur
Selain daripada mendapatkan semula sel tunggal, fungsi INDEX dapat mengembalikan tatasusunan nilai daripada keseluruhan baris atau lajur . Untuk mendapatkan semua nilai daripada lajur tertentu, anda perlu meninggalkan argumen row_num atau tetapkannya kepada 0. Begitu juga, untuk mendapatkan keseluruhan baris, anda menghantar nilai kosong atau 0 dalam column_num.
Formula INDEX sedemikian sukar digunakan sendiri, kerana Excel tidak dapat memuatkan tatasusunan nilai yang dikembalikan oleh formula dalam satu sel, dan anda akan mendapat #VALUE! ralat sebaliknya. Walau bagaimanapun, jika anda menggunakan INDEX bersama-sama dengan fungsi lain, seperti SUM atau AVERAGE, anda akan mendapat hasil yang hebat.
Sebagai contoh, anda boleh menggunakan formula berikut untuk mengira purata suhu planet dalam sistem Suria:
=AVERAGE(INDEX(SourceData, , 4))
Dalam formula di atas, hujah column_num ialah 4 kerana Suhu dalam lajur ke-4 dalam jadual kami. Parameter row_num diabaikan.
Dengan cara yang sama, anda boleh mencari minimum dan maksimumsuhu:
=MAX(INDEX(SourceData, , 4))
=MIN(INDEX(SourceData, , 4))
Dan hitung jumlah jisim planet (Jisim ialah lajur ke-2 dalam jadual):
=SUM(INDEX(SourceData, , 2))
Dari sudut pandangan praktikal, fungsi INDEX dalam formula di atas adalah berlebihan. Anda hanya boleh menulis =AVERAGE(range)
atau =SUM(range)
dan mendapatkan hasil yang sama.
Apabila bekerja dengan data sebenar, ciri ini mungkin berguna sebagai sebahagian daripada formula yang lebih kompleks yang anda gunakan untuk analisis data.
3. Menggunakan INDEX dengan fungsi lain (SUM, AVERAGE, MAX, MIN)
Daripada contoh sebelumnya, anda mungkin berada di bawah tanggapan bahawa formula INDEX mengembalikan nilai, tetapi realitinya ia mengembalikan rujukan ke sel yang mengandungi nilai. Dan contoh ini menunjukkan sifat sebenar fungsi Excel INDEX.
Memandangkan hasil formula INDEX ialah rujukan, kita boleh menggunakannya dalam fungsi lain untuk membuat julat dinamik . Kedengaran mengelirukan? Formula berikut akan menjelaskan semuanya.
Katakan anda mempunyai formula =AVERAGE(A1:A10)
yang mengembalikan purata nilai dalam sel A1:A10. Daripada menulis julat terus dalam formula, anda boleh menggantikan sama ada A1 atau A10, atau kedua-duanya, dengan fungsi INDEX, seperti ini:
=AVERAGE(A1 : INDEX(A1:A20,10))
Kedua-dua formula di atas akan menyampaikan yang sama terhasil kerana fungsi INDEX juga mengembalikan rujukan kepada sel A10 (nombor_baris ditetapkan kepada 10, angka_kolom diabaikan). Perbezaannya ialah julat adalah formula PURATA / INDEX adalah dinamik,dan sebaik sahaja anda menukar argumen row_num dalam INDEX, julat yang diproses oleh fungsi AVERAGE akan berubah dan formula akan mengembalikan hasil yang berbeza.
Nampaknya, laluan formula INDEX kelihatan terlalu rumit, tetapi ia mempunyai aplikasi praktikal , seperti yang ditunjukkan dalam contoh berikut.
Contoh 1. Kira purata N item teratas dalam senarai
Katakan anda ingin mengetahui purata diameter N planet terbesar dalam sistem kami . Jadi, anda mengisih jadual mengikut lajur Diameter daripada terbesar kepada terkecil, dan gunakan formula Purata / Indeks berikut:
=AVERAGE(C5 : INDEX(SourceData[Diameter], B1))
Contoh 2. Jumlahkan item antara dua item yang ditentukan
Sekiranya anda ingin menentukan item sempadan atas dan bawah dalam formula anda, anda hanya perlu menggunakan dua fungsi INDEX untuk mengembalikan yang pertama dan item terakhir yang anda mahukan.
Sebagai contoh, formula berikut mengembalikan jumlah nilai dalam lajur Diameter antara dua item yang dinyatakan dalam sel B1 dan B2:
=SUM(INDEX(SourceData[Diameter],B1) : INDEX(SourceData[Diameter], B2))
4. Formula INDEX untuk mencipta julat dinamik dan senarai lungsur turun
Seperti yang sering berlaku, apabila anda mula menyusun data dalam lembaran kerja, anda mungkin tidak tahu berapa banyak entri yang akan anda miliki akhirnya. Ini tidak berlaku dengan jadual planet kita, yang nampaknya lengkap, tetapi siapa tahu...
Bagaimanapun, jika anda mempunyai bilangan item yang berubah dalam lajur tertentu, katakan daripada A1 kepada A n ,anda mungkin mahu mencipta julat bernama dinamik yang merangkumi semua sel dengan data. Pada masa itu, anda mahu julat melaraskan secara automatik semasa anda menambah item baharu atau memadamkan beberapa item yang sedia ada. Sebagai contoh, jika anda mempunyai 10 item pada masa ini, julat nama anda ialah A1:A10. Jika anda menambah entri baharu, julat yang dinamakan akan berkembang secara automatik kepada A1:A11 dan jika anda menukar fikiran dan memadamkan data yang baru ditambah itu, julat itu akan kembali secara automatik kepada A1:A10.
Kelebihan utama ini pendekatan ialah anda tidak perlu sentiasa mengemas kini semua formula dalam buku kerja anda untuk memastikan ia merujuk kepada julat yang betul.
Salah satu cara untuk menentukan julat dinamik ialah menggunakan fungsi Excel OFFSET:
=OFFSET(Sheet_Name!$A$1, 0, 0, COUNTA(Sheet_Name!$A:$A), 1)
Satu lagi penyelesaian yang mungkin adalah menggunakan Excel INDEX bersama-sama dengan COUNTA:
=Sheet_Name!$A$1:INDEX(Sheet_Name!$A:$A, COUNTA(Sheet_Name!$A:$A))
Dalam kedua-dua formula, A1 ialah sel yang mengandungi item pertama senarai dan julat dinamik yang dihasilkan oleh kedua-dua formula akan menjadi sama.
Perbezaan adalah dalam pendekatan. Semasa fungsi OFFSET bergerak dari titik permulaan dengan bilangan baris dan/atau lajur tertentu, INDEX mencari sel di persimpangan baris dan lajur tertentu. Fungsi COUNTA, yang digunakan dalam kedua-dua formula, mendapat bilangan sel tidak kosong dalam lajur yang diminati.
Dalam contoh ini, terdapat 9 sel bukan kosong dalam lajur A, jadi COUNTA mengembalikan 9. Akibatnya, INDEX mengembalikan $A$9, iaitu sel terakhir digunakan dalam lajur A (biasanya INDEX