Saya memiliki spreadsheet dengan beberapa kolom dan saya ingin mengembalikan nilai yang berbeda berdasarkan nilai dalam Column A dan jika salah satu kolom lain menunjukkan true atau 1.

Sebagai contoh

Jika column A memiliki nilai "A" dan column B-N adalah TRUE atau 1 maka saya ingin mengembalikan "Good" ke kolom O

Jika column A memiliki nilai "B" dan column B-N adalah TRUE atau 1 maka saya ingin mengembalikan "Best" ke column O

Tautan ke spreadsheet: https://docs.google.com/spreadsheets/ d/12k9usKsOgrOUhtW5WBvfY7WB5hbfnTMSPgXtrqcRFjM/edit?usp=sharing

0
THRILLHOUSE 13 Mei 2021, 18:23

2 jawaban

Jawaban Terbaik

Jadi, Anda sudah memiliki solusi parsial ini. Untuk mendapatkan kondisi kedua yang harus dipenuhi sebelum mencetak sesuatu ke sel Anda, cukup tambahkan AND() dengan COUNTIF() baru, bandingkan kolom A dengan A, lalu di else argumen, ulangi IF() asli Anda, cukup ubah A untuk B dan output untuk setiap kasus. Saya akan terlihat seperti ini:

=IF(AND(countif(A2;"A");OR(countif(A2:N2;"Y");countif(A2:N2;TRUE)));"Good";
IF(AND(countif(A2;"B");OR(countif(A2:N2;"Y");countif(A2:N2;TRUE)));"Best";"BAD"))

yay

Untuk menggunakannya di setiap baris, cukup isi otomatis kolom O. Nomor baris akan berubah sesuai dan bekerja dengan sendirinya.

Jika Anda membutuhkan pernyataan if() baru untuk kasus ketiga atau keempat, ulangi saja, susun satu IF() di dalam yang lain, sisakan ruang untuk pesan kesalahan default di akhir.

1
Rodrigo Biffi 13 Mei 2021, 17:35

Coba ini di sel O2 (di mana lembar sampel Anda hanya memiliki nilai TRUE, FALSE, Y atau N di B2:N):

=arrayformula((trim(transpose(query(transpose(iferror(regexreplace(regexreplace(text(B2:N,),"(FALSE)|(N)",),"(Y)|(TRUE)",if(A2:A="A","Good",if(A2:A="B","Best",))),)),,columns(B2:N))))))

Alternatif di mana nilai dalam B:N adalah 0 atau 1:

=arrayformula((trim(transpose(query(transpose(iferror(substitute(substitute(B2:N,0,),1,ifs(A2:A="A","Good",A2:A="B","Best")),)),,columns(B2:N)))))) B2:N adalah rentang sel yang akan diproses.

Bagian dalam SUBSTITUTE menghapus semua nilai 0.

Nilai SUBSTITUTE luar menukar 1 untuk pengujian guna melihat apakah nilai dalam A berisi "A" atau "B".

IFS melakukan pengujian dan mengembalikan "Good" atau "Best".

IFERROR menyembunyikan nilai #N/A di bawah lembar tempat baris kosong.

TRANSPOSE mentranspos data untuk QUERY.

QUERY digunakan untuk menciutkan sel kosong (vertikal). columns(B2:N) digunakan di bagian header QUERY. Ini adalah kekhasan QUERY, di mana nomor tajuk >= kolom data, QUERY melakukan penciutan.

TRANSPOSE mengembalikan set data ke orientasi sebelumnya.

TRIM menghapus spasi awal atau akhir.

ARRAYFORMULA memungkinkan rumus untuk secara otomatis mengalir ke bawah lembar, daripada Anda perlu menyeret rumus ke bawah (seperti dengan =IF(AND({B2:N2}>0, A2="A"),"Good", "")).

2
Aresvik 13 Mei 2021, 18:12