ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้

บทความนี้จะอธิบายเกี่ยวกับไวยากรณ์ของสูตรและการใช้ฟังก์ชัน DCOUNTA ใน Microsoft Excel

คำอธิบาย

นับจำนวนเซลล์ที่ไม่ว่างในเขตข้อมูล (คอลัมน์) ของระเบียนในรายการหรือฐานข้อมูลที่ตรงกับเงื่อนไขที่คุณระบุ

อาร์กิวเมนต์เขตข้อมูลจะมีหรือไม่ก็ได้ ถ้าละเขตข้อมูล DCOUNTA จะนับระเบียนทั้งหมดในฐานข้อมูลที่ตรงกับเกณฑ์

ไวยากรณ์

DCOUNTA(database, field, criteria)

ไวยากรณ์ของฟังก์ชัน DCOUNTA มีอาร์กิวเมนต์ดังนี้

  • ฐานข้อมูล    จำเป็น ช่วงของเซลล์ที่รวมรายการหรือฐานข้อมูล ฐานข้อมูลคือรายการข้อมูลที่เกี่ยวข้องซึ่งแถวของข้อมูลที่เกี่ยวข้องคือ ระเบียน และคอลัมน์ของข้อมูลคือเขตข้อมูล แถวแรกของรายการจะมีป้ายชื่อของแต่ละคอลัมน์

  • เขตข้อมูล    ไม่จำเป็น ระบุคอลัมน์ที่ใช้ในฟังก์ชัน ใส่ป้ายชื่อคอลัมน์ที่อยู่ระหว่างเครื่องหมายอัญประกาศคู่ เช่น "อายุ" หรือ "ผลตอบแทน" หรือตัวเลข (ไม่มีเครื่องหมายอัญประกาศ) ที่แสดงตําแหน่งของคอลัมน์ภายในรายการ: 1 หมายถึงคอลัมน์แรก ส่วน 2 หมายถึงคอลัมน์ที่สอง และเช่นนี้ไปต่อๆ ไป

  • เกณฑ์    จำเป็น ช่วงของเซลล์ที่มีเงื่อนไขที่คุณระบุ คุณสามารถใช้ช่วงใดเป็นอาร์กิวเมนต์ criteria ได้ ตราบเท่าที่ช่วงมีป้ายชื่อของคอลัมน์อย่างน้อยหนึ่งป้าย และมีอย่างน้อยหนึ่งเซลล์อยู่ใต้ป้ายชื่อคอลัมน์ที่คุณระบุเงื่อนไขของคอลัมน์นั้น

ข้อสังเกต

  • คุณสามารถใช้ช่วงใดเป็นอาร์กิวเมนต์ criteria ก็ได้ ตราบเท่าที่ช่วงนั้นมีป้ายชื่อของคอลัมน์อย่างน้อยหนึ่งป้าย และมีอย่างน้อยหนึ่งเซลล์อยู่ใต้ป้ายชื่อคอลัมน์ที่ใช้ระบุเงื่อนไข

    ตัวอย่าง เช่น ถ้าช่วง G1:G2 มีป้ายชื่อคอลัมน์ Income ใน G1 และจำนวน $10,000 ใน G2 คุณก็สามารถกำหนดช่วงนั้นเป็น MatchIncome และใช้ชื่อนั้นเป็นอาร์กิวเมนต์ของ Criteria ในฟังก์ชันฐานข้อมูลได้

  • ห้ามวางช่วงเงื่อนไขไว้ใต้รายการ แม้ว่าช่วงเงื่อนไขจะอยู่ในที่ใดก็ได้บนเวิร์กชีต ถ้าคุณเพิ่มข้อมูลเพิ่มเติมลงในรายการ ข้อมูลใหม่จะถูกเพิ่มลงในแถวแรกด้านล่างรายการ ถ้าแถวด้านล่างรายการไม่ว่างเปล่า Excelคุณจะไม่สามารถเพิ่มข้อมูลใหม่ได้

  • ดูให้แน่ใจว่าช่วงเงื่อนไขไม่ได้ซ้อนทับรายการข้อมูล

  • เมื่อต้องการดำเนินการทั้งคอลัมน์ในฐานข้อมูล ให้เพิ่มบรรทัดว่างไว้ใต้ป้ายชื่อคอลัมน์ภายในช่วง criteria

ตัวอย่าง

คัดลอกข้อมูลตัวอย่างในตารางต่อไปนี้ และวางในเซลล์ A1 ของเวิร์กชีต Excel ใหม่ เพื่อให้สูตรแสดงผลลัพธ์ ให้เลือกสูตร กด F2 แล้วกด Enter ถ้าคุณต้องการ คุณสามารถปรับความกว้างของคอลัมน์เพื่อดูข้อมูลทั้งหมดได้ ถ้าคุณคัดลอกตัวอย่างต่อไปนี้Excel ตรวจสอบให้แน่ใจว่าคุณเลือกเซลล์ทั้งหมดในตารางนี้ รวมถึงเซลล์ที่มุมซ้ายบน

ต้นไม้

ความสูง

อายุ

ผลตอบแทน

ผลกำไร

ความสูง

="=แอปเปิล"

>10

<16

="=แพร์"

ต้นไม้

ความสูง

อายุ

ผลตอบแทน

ผลกำไร

Apple

18

20

14

105.0

Pear

1.2

1.2

10

96.0

Cherry

1.3

14

9

105.0

Apple

14

15

10

75.0

Pear

9

8

8

76.8

Apple

8

9

6

45.0

สูตร

คำอธิบาย

ผลลัพธ์

=DCOUNTA(A4:E10,"ผลกำไร",A1:F2)

นับแถว (1) ที่มี "แอปเปิล" ในคอลัมน์ A ที่มีความสูง >10 และ <16 เฉพาะแถวที่ 8 เท่านั้นที่เป็นไปตามสามเงื่อนไขเหล่านี้

1

ตัวอย่างของเงื่อนไข

  • เมื่อคุณใส่=ข้อความในเซลล์ Excelจะตีความที่เป็นสูตรและพยายามคํานวณ เมื่อต้องการใส่= Excelสูตรไม่พยายามคํานวณ ให้ใช้ไวยากรณ์นี้

    =''= รายการ ''

    เมื่อรายการ คือข้อความหรือค่าที่คุณต้องการค้นหา ตัวอย่างเช่น:

สิ่งที่คุณพิมพ์ลงในเซลล์

สิ่งที่ Excel ประเมินและแสดง

="=Davolio"

=Davolio

="=3000"

=3000

  • เมื่อคุณกรองข้อมูลข้อความ Excelไม่แยกความแตกต่างระหว่างอักขระตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก อย่างไรก็ตาม คุณสามารถใช้สูตรเพื่อค้นหาแบบตรงตามตัวพิมพ์ใหญ่-เล็กได้

ส่วนต่อไปนี้แสดงตัวอย่างของเกณฑ์ที่มีความซับซ้อน

หลายเกณฑ์ในหนึ่งคอลัมน์

ตรรกะบูลีน     (พนักงานขาย = "Davolio" OR พนักงานขาย = "Buchanan")

เมื่อต้องการค้นหาแถวต่างๆ ที่ตรงกับหลายเกณฑ์สำหรับหนึ่งคอลัมน์ ให้พิมพ์เกณฑ์ลงไปตรงด้านล่างของแต่ละเกณฑ์ในแต่ละแถวของช่วงเกณฑ์นั้น

ในช่วงข้อมูลต่อไปนี้ (A6:C10) มีการใช้ช่วงเงื่อนไข (B1:B3) เพื่อนับแถวต่างๆ ที่มี "Davolio" หรือ "Buchanan" ในคอลัมน์พนักงานขาย

พนักงานขาย

="=Davolio"

="=Buchanan"

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

พืชผัก

Buchanan

$6,328

พืชผัก

Davolio

$6,544

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,2,B1:B3)

นับจำนวนแถว(3) ใน A6:C10 ที่ตรงกับเงื่อนไข "พนักงานขาย" อย่างใดอย่างหนึ่งในแถว 2 และ 3

=DCOUNTA(A6:C10,2,B1:B3)

หลายเงื่อนไขในหลายคอลัมน์ซึ่งเงื่อนไขทั้งหมดต้องเป็นจริง

ตรรกะบูลีน     (ชนิด = "Produce" AND ยอดขาย > 2000)

เมื่อต้องการค้นหาแถวต่างๆ ที่ตรงกับหลายเงื่อนไขในหลายคอลัมน์ ให้พิมพ์เงื่อนไขทั้งหมดในแถวเดียวกันกับช่วงเงื่อนไข

ในช่วงข้อมูลต่อไปนี้ (A6:C12) มีการใช้ช่วงเงื่อนไข (A1:C2) เพื่อนับแถวต่างๆ ที่มี "Produce" ในคอลัมน์ชนิด และมีมูลค่ามากกว่า $2,000 ในคอลัมน์ยอดขาย

ชนิด

พนักงานขาย

ยอดขาย

="=Produce"

>2000

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

Produce

Buchanan

$935

พืชผัก

Davolio

$6,544

เครื่องดื่ม

สัญญา

$3,677

พืชผัก

Davolio

$3,186

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C12,,A1:C2)

นับจำนวนแถว (2) ใน A6:C12 ที่ตรงกับเงื่อนไขในแถว 2 (="Produce" และ >2000)

=DCOUNTA(A6:C12,,A1:C2)

หลายเงื่อนไขในหลายคอลัมน์ซึ่งเงื่อนไขใดเงื่อนไขหนึ่งต้องเป็นจริง

ตรรกะบูลีน     (ชนิด = "พืชผัก" OR พนักงานขาย = "Davolio")

เมื่อต้องการค้นหาแถวต่างๆ ที่ตรงกับหลายเกณฑ์ในหลายคอลัมน์ซึ่งเกณฑ์ใดเกณฑ์หนึ่งต้องเป็นจริง ให้พิมพ์เกณฑ์ในแต่ละแถวของช่วงเกณฑ์

ในช่วงข้อมูลต่อไปนี้ (A6:C10) ช่วงเกณฑ์ (A1:B3) แสดงแถวทั้งหมดที่มี "Produce" ในคอลัมน์ Type หรือ "Davolio"

ชนิด

พนักงานขาย

="=Produce"

="=Davolio"

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$675

Buchanan

Buchanan

$937

Produce

Buchanan

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,"ยอดขาย",A1:B3)

นับจำนวนแถว (2) ใน A6:C10 ที่ตรงตามเงื่อนไขใดเงื่อนไขหนึ่งใน A1:C3 โดยที่ เขตข้อมูล "ยอดขาย"ไม่ว่างเปล่า

=DCOUNTA(A6:C10,"ยอดขาย",A1:B3)

หลายชุดของเงื่อนไขโดยที่แต่ละชุดของเงื่อนไขมีเงื่อนไขสำหรับหลายคอลัมน์

ตรรกะบูลีน     ( (พนักงานขาย = "Davolio AND ยอดขาย > 3000) OR (พนักงานขาย = "Buchanan" AND ยอดขาย > 1500) )

เมื่อต้องการค้นหาแถวต่างๆ ที่ตรงกับหลายชุดของเกณฑ์โดยที่แต่ละชุดของเกณฑ์ประกอบด้วยเกณฑ์สำหรับหลายคอลัมน์ ให้พิมพ์แต่ละชุดของเกณฑ์ในแต่ละแถว

ในช่วงข้อมูลต่อไปนี้ (A6:C10) มีการใช้ช่วงเงื่อนไข (B1:C3) เพื่อนับแถวต่างๆ ที่มีทั้ง "Davolio" ในคอลัมน์พนักงานขาย และมูลค่ามากกว่า $3,000 ในคอลัมน์ยอดขาย หรือแถวต่างๆ ที่มีทั้ง "Buchanan" ในคอลัมน์พนักงานขาย และมูลค่ามากกว่า $1,500 ในคอลัมน์ยอดขาย

ชนิด

พนักงานขาย

ยอดขาย

="=Davolio"

>3000

="=Buchanan"

>1500

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

พืชผัก

Buchanan

$6,328

พืชผัก

Davolio

$6,544

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,,B1:C3)

นับจำนวนแถว (2) ใน A6:C10 ที่ตรงตามเงื่อนไขทั้งหมดใน B1:C3

=DCOUNTA(A6:C10,,B1:C3)

หลายชุดของเงื่อนไขโดยที่เงื่อนไขแต่ละชุดมีเงื่อนไขสำหรับหนึ่งคอลัมน์

ตรรกะบูลีน     ( (ยอดขาย > 6000 AND ยอดขาย < 6500 ) OR (ยอดขาย < 500) )

เมื่อต้องการค้นหาแถวต่างๆ ที่ตรงกับหลายชุดของเกณฑ์โดยที่แต่ละชุดของเกณฑ์ประกอบด้วยเกณฑ์สำหรับหนึ่งคอลัมน์ ให้พิมพ์เกณฑ์ทั้งหมดในแถวเดียวกันกับช่วงเกณฑ์ ให้ใส่ส่วนหัวของคอลัมน์แบบเดียวกันไว้ในหลายๆ คอลัมน์

ในช่วงข้อมูลต่อไปนี้ (A6:C10) มีการใช้ช่วงเงื่อนไข (C1:D3) เพื่อนับแถวต่างๆ ที่มีมูลค่าระหว่าง $6,000 และ $6,500 และมูลค่าน้อยกว่า $500 ในคอลัมน์ยอดขาย

ชนิด

พนักงานขาย

ยอดขาย

ยอดขาย

>6000

<6500

<500

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

พืชผัก

Buchanan

$6,328

พืชผัก

Davolio

$6,544

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,,C1:D3)

นับจำนวนแถว (2) ที่ตรงกับเงื่อนไขในแถว 2 (>6000 และ <6500) หรือตรงตามเงื่อนไขในแถว 3 (<500)

=DCOUNTA(A6:C10,,C1:D3)

เกณฑ์ที่จะค้นหาค่าข้อความที่มีอักขระบางตัวร่วมกันแต่ไม่ใช่ทั้งหมด

เมื่อต้องการค้นหาค่าข้อความที่มีอักขระบางตัวร่วมกันแต่ไม่ใช่ทั้งหมด ให้ทำตามขั้นตอนใดขั้นตอนหนึ่ง หรือมากกว่าดังต่อไปนี้

  • พิมพ์อักขระอย่างน้อยหนึ่งตัวโดยไม่มีเครื่องหมายเท่ากับ (=) เพื่อค้นหาแถวต่างๆ ด้วยค่าข้อความในคอลัมน์ที่ขึ้นต้นด้วยอักขระเหล่านั้น ตัวอย่างเช่น ถ้าคุณพิมพ์ข้อความDavเป็นเกณฑ์ เกณฑ์ Excelจะค้นหา "Davolio," "David," และ "Davis"

  • ใช้อักขระตัวแทน

    สามารถใช้อักขระตัวแทนต่อไปนี้เป็นเกณฑ์การเปรียบเทียบได้

ให้ใช้

เมื่อต้องการค้นหา

? (เครื่องหมายคำถาม)

อักขระตัวเดียวตัวใดก็ได้
ตัวอย่างเช่น sm?th จะค้นหา "smith" และ "smyth"

* (เครื่องหมายดอกจัน)

อักขระจำนวนเท่าใดก็ได้
ตัวอย่างเช่น *east จะค้นหา "Northeast" และ "Southeast"

~ (เครื่องหมายตัวหนอน) ตามด้วย ?, * หรือ ~

เครื่องหมายคำถาม เครื่องหมายดอกจัน หรือเครื่องหมายตัวหนอน
ตัวอย่างเช่น fy91~? จะค้นหา "fy91?"

ในช่วงข้อมูลต่อไปนี้ (A6:C10) มีการใช้ช่วงเงื่อนไข (A1:B3) เพื่อนับแถวต่างๆ ที่มี "Me" เป็นอักขระตัวแรกในคอลัมน์ชนิด หรือแถวต่างๆ ที่มีอักขระตัวที่สองเป็น "u" ในคอลัมน์พนักงานขาย

ชนิด

พนักงานขาย

ยอดขาย

Me

?u*

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

พืชผัก

Buchanan

$6,328

พืชผัก

Davolio

$6,544

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,,A1:B3)

นับจำนวนแถว (3) ที่ตรงกับเงื่อนไขอย่างใดอย่างหนึ่ง A1:B3

=DCOUNTA(A6:C10,,A1:B3)

เกณฑ์ที่ได้สร้างไว้เป็นผลลัพธ์ของสูตร

คุณสามารถใช้ค่าจากการคํานวณที่เป็นผลลัพธ์ของค่า สูตร เป็นเกณฑ์ของคุณ โปรดอย่าลืมประเด็นสําคัญต่อไปนี้:

  • สูตรต้องประเมินค่าเป็น TRUE หรือ FALSE

  • เนื่องจากว่าคุณกำลังใช้สูตร ให้ใส่สูตรที่ต้องการ และอย่าพิมพ์นิพจน์ในรูปแบบต่อไปนี้

    =''= รายการ ''

  • อย่าใช้ป้ายชื่อคอลัมน์สำหรับป้ายชื่อของเกณฑ์ ให้ปล่อยป้ายชื่อของเกณฑ์ว่างเปล่า หรือจะใช้ป้ายชื่อที่ไม่ใช่ป้ายชื่อคอลัมน์ในช่วงก็ได้ (ในตัวอย่างด้านล่าง ค่าเฉลี่ยจากการคำนวณ และการตรงกันพอดี)

    ถ้าคุณใช้ป้ายชื่อคอลัมน์ในสูตรแทนที่จะเป็นการอ้างอิงเซลล์แบบสัมพัทธ์หรือชื่อช่วง Excel จะแสดงค่าความผิดพลาด เช่น #NAME? หรือ #VALUE! ในเซลล์ที่มีเงื่อนไข คุณอาจละเลยข้อผิดพลาดนี้ได้ เพราะไม่มีผลกระทบต่อวิธีการกรองช่วง

  • สูตรที่คุณใช้เป็นเงื่อนไขจะต้องใช้การอ้างอิงสัมพัทธ์เพื่ออ้างอิงไปยังเซลล์ที่สอดคล้องกันในแถวแรก

  • การอ้างอิงอื่นๆ ในสูตรจะต้องเป็นการอ้างอิงแบบสัมบูรณ์

การกรองค่าที่มากกว่าค่าเฉลี่ยของค่าทั้งหมดในช่วงข้อมูล

ในช่วงข้อมูลต่อไปนี้ (A6:C10) มีการใช้ช่วงเงื่อนไข (C1:C2) เพื่อนับแถวต่างๆ ที่มีมูลค่าในคอลัมน์ยอดขาย มากกว่าค่าเฉลี่ยของมูลค่าการขายทั้งหมด (C7:C10) ค่าเฉลี่ยจะถูกคํานวณในเซลล์ C4 และผลลัพธ์จะถูกรวมในเซลล์ C2 กับสูตร =">"&C4 เพื่อสร้างเกณฑ์ที่ใช้

ยอดขาย

=CONCATENATE(">",C4)

ค่าเฉลี่ยจากการคำนวณ

=AVERAGE(C7:C10)

ชนิด

พนักงานขาย

ยอดขาย

เครื่องดื่ม

Suyama

$5,122

เนื้อสัตว์

Davolio

$450

พืชผัก

Buchanan

$6,328

พืชผัก

Davolio

$6,544

สูตร

คำอธิบาย

ผลลัพธ์

'=DCOUNTA(A6:C10,,C1:C2)

นับจํานวนแถว (3) ที่ตรงกับเงื่อนไข (>4611) ใน C1:C2 เงื่อนไขใน C2 จะถูกสร้างขึ้นโดยการต่อ =">" กับเซลล์ C4 ซึ่งเป็นค่าเฉลี่ยการคํานวณของ C7:C10

=DCOUNTA(A6:C10,,C1:C2)

ด้านบนของหน้า

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Microsoft Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพการแปลแค่ไหน
สิ่งที่ส่งผลกระทบต่อประสบการณ์ใช้งานของคุณ

ขอบคุณสำหรับคำติชมของคุณ

×