:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#1

Post by prasertLasong »

1. หาค่าความถี่ ที่ "Y5" โดยมีเงื่อนไข ที่ 1 เป็นตัวกำหนด ค่าคะแนนที่จะได้

2. หาค่าความรุนแรง ที่ "Z5" โดยมีเงื่อนไข ที่ 2 เป็นตัวกำหนดค่าคะแนน ที่ได้ โดยเอาค่า คะแนนที่มากที่สุด มาใช้ในการคำนวณ


ขอขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
Xcelvba
Silver
Silver
Posts: 587
Joined: Thu Feb 03, 2022 9:04 am
Excel Ver: 2019

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#2

Post by Xcelvba »

รบกวนช่วยอธิบาย ค่าความถี่ ที่ Y7 และ ความรุนแรงที่ Z7เพิ่มเติมได้ไหมครับว่าทำอย่างไร ค่าที่ได้ จึง เป็น 5 และ 3 เทียบอะไร อย่างไรครับ
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#3

Post by prasertLasong »

ความถี่ คะแนน
พบทุกสัปดาห์ =5
พบทุกเดือน =4
พบเดือน 2-5 ครั้ง / เดือน =3
พบทุกปี =2
พบ 2-5 ครั้ง / ปี =1
ค่าความถี่ ที่ได้ 5 เกิดจาก พบทุก สป.นะครับ
โดยตรวจสอบจากคอลัมน์ "D" "E" "F"

ระดับ คะแนน
ระดับ A =1
ระดับ B-D =2
ระดับ E-F =3
ระดับ G-H =4
ระดับ I =5
ให้เอาระดับที่มากที่สุดมาคำนวณ เช่น รหัสระดับสูงสุด คือ E จึงเท่ากับ 3
ซึ่งตรวจสอบจาก คอลัมน์ "O:X"
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#4

Post by snasui »

:D เพื่อให้ง่ายขึ้นผมได้ทำชีตแยกออกมาเป็น Week, Month, Year ตัวอย่างสูตรที่ Y5 คีย์

=IF(COUNT(INDEX(Week!$B$3:$G$106,MATCH(N5,Week!$A$3:$A$106,0),0))=6,5,IF(COUNT(INDEX(Month!$B$3:$L$106,MATCH(N5,Month!$A$3:$A$106,0),0))=12,5,IF(AND(AVERAGEIFS(INDEX(Month!$B$3:$L$106,MATCH(N5,Month!$A$3:$A$106,0),0),INDEX(Month!$B$3:$L$106,MATCH(N5,Month!$A$3:$A$106,0),0),">0")>=2,AVERAGEIFS(INDEX(Month!$A$3:$L$106,MATCH(N5,Month!$A$3:$A$106,0),0),INDEX(Month!$A$3:$L$106,MATCH(N5,Month!$A$3:$A$106,0),0),">0")<=5),3,IF(COUNT(INDEX(Year!$B$3:$C$106,MATCH(N5,Year!$A$3:$A$106,0),0))=2,2,IF(AND(AVERAGEIFS(INDEX(Year!$B$3:$C$106,MATCH(N5,Year!$A$3:$A$106,0),0),INDEX(Year!$B$3:$C$106,MATCH(N5,Year!$A$3:$A$106,0),0),">0")>=2,AVERAGEIFS(INDEX(Year!$B$3:$C$106,MATCH(N5,Year!$A$3:$A$106,0),0),INDEX(Year!$B$3:$C$106,MATCH(N5,Year!$A$3:$A$106,0),0),">0")<=5),1,0)))))

Enter > Copy ไปยังเซลล์ด้านล่าง

สิ่งที่จะต้องปรับในสูตรคือช่วงเซลล์ในสูตร Index จะต้องครอบคลุมทุกคอลัมน์ช่วงข้อมูลของชีตนั้น เช่นมี 52 Week ก็ต้องคลุมไป 56 คอลัมน์

ควรทำข้อมูลมาเพียงไม่กี่ Code และให้มีครบทุกเงื่อนไขจะได้สะดวกในการตรวจสอบ

ส่วนข้อ 2 ยังไม่ค่อยเข้าใจ ช่วยยกตัวอย่างมาใหม่ครับ
You do not have the required permissions to view the files attached to this post.
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#5

Post by prasertLasong »

ขอขอบคุณครับ แต่ผมก็ยังไม่ได้คำตอบที่ต้องการ เพราะผมอธิบายไม่เข้าใจผมขอเรียบเรียงใหม่ก่อนนะครับ
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#6

Post by prasertLasong »

ส่วนข้อ 2 ยังไม่ค่อยเข้าใจ ช่วยยกตัวอย่างมาใหม่ครับ
ผมยกตัวอย่างแล้วลองอธิบายใหม่ใน ไฟล์ excel ตัวอย่างแล้ว
ผมอธิบายไม่เก่งต้องขออภัยด้วยนะครับ
ขอขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#7

Post by snasui »

:D ค่อย ๆ ถามตอบไปครับ

ตัวอย่างคำตอบในเซลล์ M12 มีค่าเป็น 4 มีวิธีคิดด้วยมืออย่างไร กรุณาแจกแจงมาอย่างละเอียดครับ
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#8

Post by prasertLasong »

M12 มีค่าเป็น 4 มีวิธีคิดด้วยมืออย่างไร กรุณาแจกแจงมาอย่างละเอียดครับ
คือ ข้อมูล Code CPX301 ที่คอลัมน์ "B" มีการตรวจพบ 4 ครั้ง เกิดทุกเดือน ที่คอลัมน์ "E" ปี 2022 ที่คอลัมน์ "F" จำนวน 3 ครั้ง
เกิดทุกเดือน ที่คอลัมน์ "E" ปี 2023 ที่คอลัมน์ "F" จำนวน 1ครั้ง ซึ่งตัวอย่างข้อมูล มี 3 เดือน ต.ค พ.ย ธ.ค ปี 2022 และ มค. ปี 2023 รวม 4 เดือน
มาตรวจสอบ ในตาราง เงื่อนไข ที่ 1 ว่าเข้าเงื่อนไขใด
จาก ค่า M12 แสดงว่า พบทุกเดือน จึงให้ค่าคะแนน = 4 ครับ (เพราะตัวอย่างข้อมูลมี 4 เดือนครับ)
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#9

Post by snasui »

:D วิธีการตรวจสอบเช่นนั้นผมตอบไปแล้วตามโพสต์ #4 viewtopic.php?p=114678#p114633 ไม่ทราบว่าเมื่อปรับใช้แล้วผิดพลาดตรงไหน อย่างไรครับ
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#10

Post by prasertLasong »

ขอขอบคุณครับ อาจารย์ คือคำตอบมันไม่ตรงตามที่คิดไว้นะครับ
ตัวอย่าง "M12" = 4 ซึ่ง สุตรที่คำนวณให้ กับ เท่ากับ 2
ซึ่ง 4 น่าจะเป็นคำตอบที่ ถูกเพราะความถี่อยู่ที่เกิดทุกสัปดาห์
ขอโทษนะครับทีรบกวนบ่อยๆ ขอบคุณครับ (ผมอธิบายใหม่ ในไฟล์นะครับ)
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#11

Post by snasui »

:D ตัวอย่างการปรับใช้สูตรครับ

=IF(COUNT(INDEX(Week!$B$5:$G$10,MATCH(K12,Week!$A$5:$A$10,0),0))=6,5,IF(COUNT(INDEX(Month!$B$5:$L$10,MATCH(K12,Month!$A$5:$A$10,0),0))=4,4,IF(AND(AVERAGEIFS(INDEX(Month!$B$5:$L$10,MATCH(K12,Month!$A$5:$A$10,0),0),INDEX(Month!$B$5:$L$10,MATCH(K12,Month!$A$5:$A$10,0),0),">0")>=2,AVERAGEIFS(INDEX(Month!$A$5:$L$10,MATCH(K12,Month!$A$5:$A$10,0),0),INDEX(Month!$A$5:$L$10,MATCH(K12,Month!$A$5:$A$10,0),0),">0")<=5),3,IF(COUNT(INDEX(Year!$B$5:$C$10,MATCH(K12,Year!$A$5:$A$10,0),0))=2,2,IF(AND(AVERAGEIFS(INDEX(Year!$B$5:$C$10,MATCH(K12,Year!$A$5:$A$10,0),0),INDEX(Year!$B$5:$C$10,MATCH(K12,Year!$A$5:$A$10,0),0),">0")>=2,AVERAGEIFS(INDEX(Year!$B$5:$C$10,MATCH(K12,Year!$A$5:$A$10,0),0),INDEX(Year!$B$5:$C$10,MATCH(K12,Year!$A$5:$A$10,0),0),">0")<=5),1,0)))))

จากตัวอย่างสูตรข้างต้น ชุดแรกนับว่ามีครบ 6 Week ให้แสดงค่า 5 ชุดถัดมานับว่าได้ 4 เดือนให้แสดงค่า 4

สิ่งที่ต้องทราบคือข้อมูลจริง มีกี่ Week, เดือน, ปี จำเป็นต้องแทนค่าเข้าไปใหม่ตามที่ใช้จริง ปรับช่วงเซลล์ให้ตรงกับตำแหน่งจริงครับ
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#12

Post by prasertLasong »

ผมลองปรับสูตรตามความเข้าใจของผมแล้ว (ไม่ค่อยเก่งเรื่องสูตรเท่าไร)
รบกวน สอบถามหน่อยครับ ที่ ช่อง M16 น่าจะเข้าเงื่อนไขที่ 1 พบ 2-5 เดือน / ครั้ง = 3 คะแนน
รบกวนแนะนำหน่อยครับ งงมาก
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#13

Post by snasui »

:D ลองเปลี่ยนจากค่าเฉลี่ยเป็นการนับแทน เนื่องจากอ่านโจทย์แล้วน่าจะเป็นการนับมากกว่า "พบ 2-5 เดือน" แสดงว่าแต่ละเดือนจะมีค่าเท่าไรไม่ได้เป็นจุดสนใจ แต่สนใจว่าพบกี่เดือน ลองเปลี่ยนสูตรที่ M12 เป็นด้านล่างครับ

=IF(COUNT(INDEX(Week!$B$3:$G$8,MATCH(K12,Week!$A$3:$A$8,0),0))=6,5,IF(COUNT(INDEX(Month!$B$3:$E$8,MATCH(K12,Month!$A$3:$A$8,0),0))=4,4,IF(AND(COUNT(INDEX(Month!$B$3:$E$8,MATCH(K12,Month!$A$3:$A$8,0),0))>=2,COUNT(INDEX(Month!$B$3:$E$8,MATCH(K12,Month!$A$3:$A$8,0),0))<=5),3,IF(COUNT(INDEX(Year!$B$3:$C$8,MATCH(K12,Year!$A$3:$A$8,0),0))=2,2,IF(AND(COUNT(INDEX(Year!$B$3:$C$8,MATCH(K12,Year!$A$3:$A$8,0),0))>=2,COUNT(INDEX(Year!$B$3:$C$8,MATCH(K12,Year!$A$3:$A$8,0),0))<=5),1,"")))))

Enter > Copy ลงด้านล่าง
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#14

Post by prasertLasong »

:D ขอขอบคุณมากๆ ครับตรงตามที่คิดไว้แล้วครับ ผมเองก็ไม่ได้อธิบายว่าเป็นการนับ ต้องขออภัยด้วยครับ

รบกวนอีกครั้งครับ ช่วยแนะนำสูตรในช่อง "N12" หน่อยนะครับ
ตรวจสอบค่าจากSheet "ระดับ" ว่า Code อยู่ระดับใด เช่น CPX301 ระดับ E =นับได้2 G=นับได้1 H=นับได้1
และ เอาค่าที่ได้ไปตรวจสอบกับตารางเงือนไขที่ 2 ว่าอยู่ระดับคะแนนที่เท่าไร
Code CPX301 ระดับ E=นับได้ 2 คะแนน =3, G=นับได้ 1 คะแนน =4, H=นับได้ 1 คะแนน =4
ระดับที่ "N12" จึงให้ค่าคะแนนอยู่ที่ 4 เพราะเงื่อนไข คือให้เอาค่าที่ มากที่สุด

ผมคิดเรื่องนี้ วนเวียนในหัวมานาน แต่คิดไม่ออก
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#15

Post by snasui »

:D ตัวอย่างสูตรที่ N12 ครับ

=LOOKUP(LOOKUP(9.99999999999999E+307,INDEX(ระดับ!$B$3:$J$8,MATCH($K12,ระดับ!$A$3:$A$8,0),0),ระดับ!$B$2:$J$2),{"A";"D";"F";"H";"I"},{1;2;3;4;5})

Enter > Copy ลงด้านล่าง
prasertLasong
Member
Member
Posts: 41
Joined: Sun Nov 07, 2021 9:57 am
Excel Ver: 2019,365

Re: สอบรบกวนสอบถาม เรื่องสูตร หาค่าตามเงื่อนไขครับ

#16

Post by prasertLasong »

ขอขอบคุณมากๆ ครับ
ตอนนี้ลองไปปรับ นิดหน่อยก็ได้ตามที่ต้องการแล้วครับ คิดมาตั้งอาทิตย์คิดไม่ได้
ถ้าไม่ได้อาจารย์คงแย่แน่ๆครับๆ
ขอบคุณครับ
Post Reply