วิธีเดียวที่ฉันพบ (ใช้สูตร) คือการแนะนำcountคอลัมน์ใหม่
หากค่าของคุณมีการระบุไว้ในคอลัมน์Aเริ่มต้นในแถว2ใส่สูตร=COUNTA(FILTER(A$2:A$7, A$2:A$7 = A2))ในB2และลากลงไปคัดลอก สิ่งนี้ให้:
| A: VALUE | B: COUNT |
|-----------|----------|
| a | 1 |
| b | 2 |
| c | 1 |
| d | 2 |
| b | 2 |
| d | 2 |
ตอนนี้เรามีการนับที่ปรากฏของแต่ละค่าที่เราสามารถกรองคอลัมน์ค่าจากA Bในเซลล์ใส่สูตรC2 =UNIQUE(FILTER(A2:A7, B2:B7 > 1))สิ่งนี้ให้:
| A: VALUE | B: COUNT | C: DUPS |
|-----------|----------|---------|
| a | 1 | b |
| b | 2 | d |
| c | 1 | |
| d | 2 | |
| b | 2 | |
| d | 2 | |
คำอธิบายของสูตร
=COUNTA(FILTER(A$2:A$7, A$2:A$7 = A2))
filterข้อตรวจสอบAคอลัมน์และพบว่าเซลล์ซึ่งมีมูลค่าเช่นเดียวกับมือถือA2( A2ถูกแทนที่ด้วยเซลล์ที่สอดคล้องกันเมื่อคัดลอกสูตร)
counta นับค่า (รวมถึงที่ไม่ใช่ตัวเลข)
=UNIQUE(FILTER(A2:A7, B2:B7 > 1))
- นี้
filterตรวจสอบคอลัมน์Bสำหรับค่าที่และผลตอบแทนค่าที่สอดคล้องกันจากคอลัมน์> 1 ฟังก์ชั่นก็ทำให้แน่ใจว่าเราจะกลับมาแต่ละค่าครั้งเดียวดังนั้นเราอย่าได้รับสองครั้งตัวอย่างเช่นAuniqueb
อย่างไรก็ตามวิธีที่สวยงามกว่านั้นก็คือการใช้ฟังก์ชั่นสคริปต์:
function dups(rows) {
var values = {};
var duplicates = [];
for (var i = 0; i < rows.length; i++) {
var value = rows[i][0];
if (values[value] !== undefined && duplicates.indexOf(value) == -1) {
duplicates.push(value);
} else {
values[value] = true
}
}
return duplicates;
}
ไปที่เครื่องมือ→ตัวแก้ไขสคริปต์วางรหัสด้านบนและบันทึก ตอนนี้คุณสามารถเรียกใช้ฟังก์ชันได้โดยป้อนสูตร=dups(A2:A7)ได้ทุกที่ A2:A7ผลตอบแทนที่ซ้ำกันนี้ที่พบใน
ฉันได้ตั้งสเปรดชีตตัวอย่างเพื่อแสดงให้เห็นทั้งความเป็นไปได้อย่าลังเลที่จะดูและคัดลอกมัน