Cara memasukkan beberapa pernyataan IF dalam satu sel di Google Sheets


17

Saya mencoba mengubah nilai sel di Google Sheets berdasarkan nilai sel yang berdekatan. Sel yang berdekatan ini mendapatkan nilainya dari warna sel yang berdekatan dengannya menggunakan rumus dari jawaban Quora ini . Jadi nilai sel harus berubah berdasarkan kode hex yang diperoleh dari warna sel pertama. Ada empat kemungkinan nilai hex saat ini jadi saya mencoba untuk menempatkan empat pernyataan IF yang berbeda di sel yang sama, jadi nilainya diubah berdasarkan ini.

Upaya pertama saya menyebabkan kesalahan parse rumus:

=if((J2="#00ff00","Read"), if(j2="#ff0000", "Unread"), if(j2="#ff9900","In Progress"), if(j2="#000000", "Not Applicable"))

Jelas Anda tidak bisa begitu saja memisahkan pernyataan dengan koma. Berdasarkan ini Stack Overflow pertanyaan saya mencoba kode ini, dengan bersarang IF pernyataan:

=if((J2="#00ff00","Read", if(j2="#ff0000", "Unread", if(j2="#ff9900","In Progress",if(j2="#000000", "Not Applicable")))))

Ini juga menyebabkan kesalahan parse rumus.

Apakah ada cara saya bisa dengan mudah memasukkan beberapa pernyataan IF dalam sel yang sama yang akan bekerja untuk kode saya?


Bisakah Anda menggabungkannya menjadi = ATAU atau yang serupa?
AccioBooks

Jawaban:


19

Gunakan lookupsebagai ganti if:

=lookup(B7,
       {"#000000","#00ff00","#ff0000","#ff9900"},
       {"Not applicable", "Read","Unread","In Progress"}
  ) 

Perhatikan bahwa parameter kedua harus berupa daftar yang diurutkan.


1
Perhatikan bahwa ini tidak berfungsi jika item dalam argumen ke-3 adalah ekspresi
Christiaan Westerbeek

1
Perhatikan bahwa larik pertama (larik "kunci") harus diurutkan (itu berfungsi ketika saya disortir menurut abjad secara menaik) agar dapat berfungsi sebagaimana dimaksud.
fgblomqvist

@ChristiaanWesterbeek, apakah ada cara untuk mengatasi ini, atau Anda hanya perlu menggunakan nested ifs?
Andrew

23

Jawaban singkat

Masalah dalam contoh yang diberikan adalah tanda kurung. Terapkan dengan benar.

Penjelasan

IF() fungsi harus memiliki dua parameter dan opsional yang ketiga.

IF(logical_expression, value_if_true, value_if_false)

Masalah khusus dengan

  • contoh pertama yang diberikan adalah bahwa bagian luar IF()memiliki terlalu banyak parameter.
  • contoh kedua adalah bahwa logical_expressionbagian luar IF()tidak kembali TRUEatauFALSE

Di Google Sheets, parameter fungsi dipisahkan dengan koma (atau titik koma jika spreadsheet Anda menggunakan koma sebagai pemisah desimal). Ketika tanda kurung digunakan untuk melampirkan beberapa operasi dan fungsi di dalam suatu fungsi mereka dianggap sebagai parameter dari fungsi yang mengandung mereka.

Praktik umum adalah menempatkan batin IF()sebagai value_if_false, tetapi itu bisa dilakukan dengan banyak cara. Menambahkan IF()di dalam yang lain sebagai value_if_truedan value_if_falsedisebut IF() logical test nestingatau adil IF() nesting.

Di bawah ini adalah contoh rumus yang memiliki tiga IF(), dua di antaranya digunakan untuk menentukan rumus value_if_falseinduknya IF(). Penyelarasan multi-line dan vertikal gaya kurung diterapkan untuk keterbacaan

 =IF(logical_expression, value_if_true, 
     IF(logical_expression, value_if_true, 
        IF(logical_expression, value_if_true, value_if_false
          )
       )
    )

Gaya di atas dapat digunakan dalam penulisan rumus Google Sheets. Saya menemukan ini berguna untuk debugging rumus.

Referensi


1
Sangat berguna, terutama sampel multiline yang diformat - membuatnya lebih mudah dipahami dan diimplementasikan.
Lukas



1

Anda telah ditawari teori dan pendekatan yang lebih baik tetapi untuk menjawab secara khusus:

Apakah ada cara saya bisa dengan mudah memasukkan beberapa pernyataan IF dalam sel yang sama yang akan bekerja untuk kode saya?

silakan coba:

=if(J2="#00ff00","Read", if(J2="#ff0000", "Unread", if(J2="#ff9900","In Progress",if(J2="#000000", "Not Applicable"))))

Yaitu, percobaan kedua Anda tanpa tanda kurung pembuka pertama dan tanpa tanda kurung penutupan terakhir.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.