Dengan menggunakan excel, bagaimana saya bisa menghitung jumlah sel dalam kolom yang berisi teks "benar" atau "salah"?

10

Saya memiliki spreadsheet yang memiliki kolom sel tempat setiap sel berisi satu kata. Saya ingin menghitung kemunculan beberapa kata. Saya dapat menggunakan fungsi COUNTIF untuk sebagian besar kata, tetapi jika kata itu "benar" atau "salah", saya mendapat 0.

        A         B 
1     apel 2
 2     benar 0
 3     salah 0
 4     jeruk 1
 5     apel

Dalam tabel spreadsheet di atas, saya memiliki rumus ini di sel B1, B2, B3 dan B4:

=COUNTIF(A1:A5,"apples")
=COUNTIF(A1:A5,"true")
=COUNTIF(A1:A5,"false")
=COUNTIF(A1:A5,"oranges)

Seperti yang Anda lihat, saya bisa menghitung apel dan jeruk, tetapi tidak benar atau salah. Saya juga sudah mencoba ini:

=COUNTIF(A1:A5,TRUE)

Tapi itu juga tidak berhasil.

Catatan - Saya menggunakan Excel 2007.

Jay Elston
sumber
3
Untuk apa nilainya saya berubah pikiran tentang ini. Saya kira rumus Excel dapat dianggap semacam bahasa pemrograman deklaratif. Saya tidak berpikir itu Turing lengkap tanpa menggunakan VBA tapi kemudian tidak ada ekspresi reguler - yang dianggap dapat diterima oleh komunitas SO!
Martin Smith
1
Tetap dengan solusi wildcard. =COUNTIF(A1:A5,"<truf")-COUNTIF(A1:A5,"<=trud")menghitung setiap string yang dimulai dengan "true" atau "trud", seperti "trudge".
Scott
1
Jay, pertanyaan lama ini muncul lagi karena posting baru. Menanamkan jawaban dalam jenis pertanyaan mengacaukan dengan struktur situs yang dimaksud. Bisakah Anda memindahkan bagian jawaban ke jawaban?
fixer1234

Jawaban:

5

Ini seharusnya bekerja:

=COUNTIF(A1:A5,"*true")

meskipun akan menghitung sel jika memiliki teks sebelum true juga. Tapi itu mungkin solusi kasar untuk Anda.

Sux2Lose
sumber
1
Saran bagus - Saya belum memikirkan kartu liar. COUNTIF kedua dapat digunakan untuk memfilter kata-kata yang diakhiri dengan "true". Rumus ini berfungsi: = COUNTIF (A1: A5, " true") - COUNTIF (A1: A5, " ? True") Saya akan mengubah jawaban ini, tetapi saya seorang pemula hanya akan 11 rep sejauh ini. (Saya tidak bisa mentransfer dari stackoverflow :-(
Jay Elston
1
Berikut variasi lain: =COUNTIFS(A1:A5, "tru?", A1:A5, "*e").
Scott
7

Argumen kedua pada rumus COUNTIF ditafsirkan oleh Excel sebagai tes yang harus dilakukan (mis. Kita bisa memasukkan "> 3", dll.). Dalam hal ini, sepertinya Excel mengonversi string "benar" dan "salah" menjadi 1 dan 0. Itu tidak akan cocok dengan teks aslinya.

Satu-satunya solusi yang saya tahu untuk masalah ini adalah menulis kode VBA untuk melakukan penghitungan.

Jika mengubah data input dapat diterima, ganti "benar" dengan "T" dan "salah" dengan "F", kemudian ubah ke COUNTIF(A1:A5,"T").

Ketika saya tersandung ini, saya menyerah pertempuran dan mengubah data input.

PS: Menggunakan Excel 2003 - masalah yang sama

Garbin Kristen
sumber
Solusi sementara saya berjalan seperti itu - saya memasukkan kolom lain dan menggunakan rumus: IF (A1 = "true", "T", IF (A1 = "false", "F", "")) untuk mengisi sel .
Hmm aku bisa melihat frustrasinya. COUNTIF(A2,">=trud")dan COUNTIF(A2,"<=truf")keduanya bekerja. COUNTIF(A2,A2)dan varian yang mungkin tidak!
Martin Smith
Tampaknya =COUNTIF(G1,">=true")dan =COUNTIF(G1,"<=true") selalu kembali 0 untuk setiap masukan mungkin dari CHAR(1)ke CHAR(255)sehingga apa pun yang sedang dikonversi ke tampaknya benar-benar tak tertandingi. Tampaknya akan bertindak seperti perbandingan NULL dalam database.
Martin Smith
3

Tampaknya Excel memperlakukan "true / TRUE" dan "false / FALSE" sebagai string ajaib ketika mereka muncul dalam rumus - mereka diperlakukan sebagai fungsi: TRUE () dan FALSE () bukan string.

Jika Anda perlu menghitung benar dan salah dalam kolom, Anda tidak akan mendapatkan hitungan jika Anda menggunakan "true" atau "= true" sebagai kriteria. Ada beberapa pendekatan yang dapat Anda gunakan untuk menghitung benar dan salah sebagai kata-kata.

Use a pair of COUNTIF functions. Either of the following works:

=COUNTIF(A1:A5,"*true")-COUNTIF(A1:A5,"*?true")

or

=COUNTIF(A1:A5,"<truf")-COUNTIF(A1:A5,"<=trud")

Create a new column with true converted to "T" and false converted to "F" using the formula:

=IF(A1="true","T",IF(A1="false","F",""))

Then trues and falses can be counted using:

=COUNTIF(A1:A5,"T")
=COUNTIF(A1:A5,"F")

Don't use "true" and "false" to begin with, use something else (such as T and F).

Terima kasih kepada Sux2Lose untuk ide wildcard dan Martin Smith untuk ide menggunakan perbandingan dengan string segera lebih besar dan kurang dari benar atau salah.

Jay Elston
sumber
0

Saya dapat menggunakan rumus berikut:

=COUNTIF(A1:A5,"=apples")
=COUNTIF(A1:A5,"=true")
=COUNTIF(A1:A5,"=false")
=COUNTIF(A1:A5,"=oranges")

Baca bantuan bawaan untuk COUNTIF. Mereka menggambarkan kemampuan untuk menggunakan operator pada kondisi lebih terinci.

tekomalogis
sumber
1
Tidak bekerja untuk saya. Pengembalian 0.
Martin Smith
1
Ini tidak bekerja untuk saya juga.
Jay Elston
0

Saya memiliki masalah serupa dengan formula SUMPRODUCT. Dengan menghapus tanda kutip di sekitar istilah FALSE, rumus menghasilkan hasil yang benar, menggunakan MS EXCEL 2003.

rohan
sumber
1
Saya sebutkan dalam pertanyaan yang saya coba = COUNTIF (A1: A5, TRUE), dan bahwa saya menggunakan versi 2007 Excel.
Jay Elston
0

Saya dapat menyelesaikan masalah menggunakan rumus berikut:

= COUNTIF (A1: A5, "T *").

"T*" menggantikan "True" jika entri dalam kolom dibatasi hanya satu kata "T".

Rocky Ellens
sumber