Ubah jumlah multi-langkah boolean menjadi satu rumus

10

Saya memiliki beberapa pembacaan sensor dan saya memeriksa untuk melihat apakah nilainya berada dalam kisaran yang dapat diterima.

Untuk melakukan ini, saya menggunakan a IFuntuk memeriksa apakah nilainya >atau <nilai yang dihitung (rata-rata). Hasilnya disimpan di kolom masing-masing. Akhirnya saya menjumlahkan hasil untuk mendapatkan jumlah berapa yang di luar batas (yaitu di atas rata-rata).

Misalnya, Axdibandingkan dengan Mean. Axuntuk masuk 1atau 0masuk If value is outside accepted bounds. Ax:

Gambar 1

Lalu jumlah dari If value is outside accepted bounds. Axdilakukan untuk mendapatkan Number of values outside bound. Ax:

Gambar 2, penjumlahan

Pertanyaan
Bagaimana cara mengonversikan ini menjadi satu formula?

clmno
sumber

Jawaban:

11

Fungsi yang Anda cari adalah COUNTIF():

Tangkapan layar Lembar Kerja

Masukkan formula berikut ini G3dan ctrl-enter / copy-paste / fill-right ke G3:I3:

=COUNTIF(A3:A8,">"&D3)

COUNTIF() memeriksa setiap nilai dalam argumen pertama terhadap kriteria yang kedua, dan menghitung berapa kali itu dipenuhi.


Menggunakan COUNTIF()adalah solusi paling sederhana dan terbaik.

Tentu saja, Anda bisa menggunakan formula yang lebih rumit / lebih sulit untuk dipahami

=SUMPRODUCT(--(A3:A8>D3))

atau array yang dimasukkan seperti

{=SUM(--(A3:A8>D3))}

atau bahkan versi yang lebih rumit dari yang tidak perlu.

Namun, tidak ada manfaat yang bisa didapat dengan menggunakan salah satu dari mereka dalam kasus khusus ini.


Jika faktanya, karena Anda tampaknya tertarik untuk mengurangi jumlah kolom pembantu, solusi keseluruhan yang lebih baik adalah dengan membuang kolom pembantu rata-rata:

Tangkapan layar Lembar Kerja

Masukkan formula berikut ini D3dan ctrl-enter / copy-paste / fill-right ke D3:F3:

=COUNTIF(A3:A8,">"&AVERAGE(A3:A8))

(Dan ya, rumus ini juga bisa dibuat lebih sulit untuk dipahami oleh pemula dengan mengubahnya menjadi =SUMPRODUCT(--(A3:A8>AVERAGE(A3:A8)))atau {=SUM(--(A3:A8>AVERAGE(A3:A8)))}.)

robinCTS
sumber
@AFH Terima kasih atas hasil edit (dan upvote ;-)). Saya bertanya-tanya bagaimana itu terjadi? Dan yang lebih penting, bagaimana saya gagal menyadarinya ¯ \ _ (ツ) _ / ¯
robinCTS
Selamat. Bot sistem memilih pos yang berperingkat tinggi untuk digunakan sebagai audit dalam antrean tinjauan LQP. Yang ini terpilih sebagai pos "berkualitas rendah" - lencana kehormatan. :-)
fixer1234
@ fixer1234 Oh, tentu saja (-‸ლ) Saya memberikan tiga solusi alternatif untuk masalah-Y dan kemudian melanjutkan untuk memasok solusi masalah-X. Dan di atas itu saya menawarkan penjelasan tentang bagaimana COUNTIF()fungsi ini bekerja. Jelas jawaban ini Kualitas Rendah! Lain kali saya hanya akan menempel pada satu baris, kode hanya menjawab. (PS Hanya memeriksa timeline . Sepertinya Anda gagal audit - Anda memilih Looks OK;-))
robinCTS
2

Fungsi SUMPRODUCT dapat memecahkan masalah Anda juga.

masukkan deskripsi gambar di sini

Tulis rumus ini di G102 & Isi Kanan dari G102 hingga I102:

=SUMPRODUCT(--(A102:A107>D102:D107))

NB Sesuaikan alamat Sel dalam rumus sesuai dengan kebutuhan Anda.

Rajesh S
sumber