Formula Excel: Jumlahkan pada hari minggu -

Isi kandungan

Formula generik

=SUMPRODUCT((WEEKDAY(dates)=day_num)*values)

Ringkasan

Untuk menjumlahkan data pada hari kerja (iaitu jumlah pada hari Isnin, Selasa, Rabu, dll.), Anda boleh menggunakan fungsi SUMPRODUCT bersama dengan fungsi WEEKDAY.

Dalam contoh yang ditunjukkan, formula dalam H4 adalah:

=SUMPRODUCT((WEEKDAY(dates,2)=G4)*amts)

Penjelasan

Anda mungkin tertanya-tanya mengapa kita tidak menggunakan fungsi SUMIF atau SUMIFS? Ini nampaknya cara yang jelas untuk menjumlahkan pada hari-hari dalam seminggu. Namun, tanpa menambahkan kolom pembantu dengan nilai hari kerja, tidak ada cara untuk membuat kriteria untuk SUMIF yang mengambil kira hari kerja.

Sebagai gantinya, kami menggunakan fungsi SUMPRODUCT yang berguna, yang menangani susunan dengan anggun tanpa perlu menggunakan Control + Shift + Enter.

Kami menggunakan SUMPRODUCT dengan hanya satu argumen, yang terdiri daripada ungkapan ini:

(WEEKDAY(dates,2)=G4)*amts

Berfungsi dari dalam ke luar, fungsi WEEKDAY dikonfigurasi dengan argumen pilihan 2, yang menyebabkannya mengembalikan nombor 1-7 untuk hari Isnin-Ahad, masing-masing. Ini tidak perlu, tetapi mempermudah untuk menyenaraikan hari-hari mengikut urutan dan mengambil nombor di lajur G mengikut urutan.

WEEKDAY menilai setiap nilai dalam julat bernama "tarikh" dan mengembalikan nombor. Hasilnya adalah susunan seperti ini:

(3; 5; 3; 1; 2; 2; 4; 2)

Nombor yang dikembalikan oleh WEEKDAY kemudian dibandingkan dengan nilai di G4, iaitu 1.

(3; 5; 3; 1; 2; 2; 4; 2) = 1

Hasilnya adalah susunan nilai BENAR / SALAH.

(FALSE; FALSE; FALSE; TRUE; FALSE; FALSE; FALSE; FALSE)

Seterusnya, susunan ini didarabkan dengan nilai dalam julat bernama "amts". SUMPRODUCT hanya berfungsi dengan angka (bukan teks atau booleans) tetapi operasi matematik secara automatik memaksakan nilai BENAR / SALAH kepada seseorang dan angka nol, jadi kami mempunyai:

(0; 0; 0; 1; 0; 0; 0; 0) * (100; 250; 75; 275; 250; 100; 300; 125)

Yang menghasilkan:

(0; 0; 0; 275; 0; 0; 0; 0)

Dengan hanya satu larik tunggal untuk diproses, SUMPRODUCT menjumlahkan item dan mengembalikan hasilnya.

Artikel menarik...