snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#1
Post
by ajsudkedt » Tue Jun 04, 2024 4:39 pm
จากภาพ
ที่ชีต input
บรรทัดแรก เลข 00000 ห้าตัวแรกคือเลขประจำตัวนักเรียน
ถัดจากนั้นคือเลขเฉลยคำตอบของแต่ละข้อ หนึ่งเลขคือหนึ่งข้อ
เรียงจากข้อหนึ่งไปจนถึงข้อสุดท้าย
ส่วนบรรทัดที่สองลงไปถึงบรรทัดสุดท้าย
เลขหน้าตัวแรกคือเลขประจำตัวนักเรียน
ถัดจากนั้นคือเลขคำตอบแต่ละข้อของนักเรียนแต่ละคน
หากต้องการทราบจำนวนข้อที่ตอบถูกของนักเรียนแต่ละคน
โดยใช้เลขบรรทัดแรกที่เฉลยเทียบกับเลขคำตอบของนักเรียน
จะต้องเขียนสูตรอย่างไรในชีต output ครับ
ตามภาพและไฟล์แนบครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#2
Post
by snasui » Tue Jun 04, 2024 5:14 pm
ตัวอย่างสูตรตามด้านล่างครับ
ที่ C1 คีย์
=input!A1
Enter
ที่ C2 คีย์
=INDEX(input!$A$2:$A$394,MATCH(A2&"*",input!$A$2:$A$394,0))
Enter > Copy ลงด้านล่าง
ที่ B2 คีย์
=SUMPRODUCT(--(INDEX(--MID($C$1,ROW(INDIRECT("7:"&LEN($C$1)-7)),1),0)=INDEX(--MID(C2,ROW(INDIRECT("7:"&LEN(C2)-7)),1),0)))
Enter > Copy ลงด้านล่าง
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#3
Post
by ajsudkedt » Tue Jun 04, 2024 10:19 pm
ถามต่อครับ
หากเราจะดึงเลขประจำตัวนักเรียน 5 หลักจากชีต input มาใส่ในชีต output
ที่คอลัมน์ A จะต้องเขียนสูตรอย่างไรครับ
ตามไฟล์แนบครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#4
Post
by norkaz » Wed Jun 05, 2024 5:31 am
...
A2
=LEFT(input!A2,5)
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
You do not have the required permissions to view the files attached to this post.
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#5
Post
by ajsudkedt » Wed Jun 05, 2024 9:19 pm
norkaz wrote: Wed Jun 05, 2024 5:31 am
...
A2
=LEFT(input!A2,5)
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ขอบพระคุณมากครับ
ได้ผลดั่งที่ต้องการเลยครับ
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#6
Post
by ajsudkedt » Tue Jul 09, 2024 9:16 pm
ผมนับด้วยมือ ตอบถูก 28
แต่สูตรแสดงผล 23
ต้องปรับสูตรตรงไหนไหม
ตามไฟล์แนบครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#7
Post
by norkaz » Tue Jul 09, 2024 11:42 pm
...
B2
=IF(C2="","",SUMPRODUCT((MID($C$1,ROW($C$7:$C$46),1)=MID($C2,ROW($C$7:$C$46),1))+0))
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
You do not have the required permissions to view the files attached to this post.
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#8
Post
by ajsudkedt » Wed Jul 10, 2024 5:16 am
norkaz wrote: Tue Jul 09, 2024 11:42 pm
...
B2
=IF(C2="","",SUMPRODUCT((MID($C$1,ROW($C$7:$C$46),1)=MID($C2,ROW($C$7:$C$46),1))+0))
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ทำไมถึงล๊อกช่วงข้อมูลไว้แค่
$C$7:$C$46
ครับ
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#9
Post
by norkaz » Wed Jul 10, 2024 6:47 am
...
สูตรผมเขียนไปนั้น เป็นหลักการเดียวกับที่ อาจารย์ คนควน ได้เขียนไปแล้ว เป๊ะครับ
เพียงแต่ผมไม่ได้ใช้ INDIRECT สูตรของอาจารย์คนควนนั้น ดักสูตร ตัว Character เกินไว้หมด ถูกต้องสมบูรณ์แบบ
ผมเห็นว่ามี 40 ข้อ ทุกรายการ เลขใช้เลข 40 จาก ROW(C7:C46)ไปแทน สูตรก็จึงสั้นกว่า
จริงๆแล้ว คือหลักการเดียวกันครับ
a) เนื่องจากคำตอบที่นักเรียนสอบ มี 40 คำตอบที่แถวที่1 คือตั้งแต่ตัวที่ 7 ถึงตัวที่ 46
b) ROW($C$7:$C$46) หมายถึงเลข 7 ถึงเลข 46 รวม 40 ตัว
c) MID($C$1,ROW($C$7:$C$46),1 หมายถึง การตัดค่าในแถวที่ 1 ตั้งแต่รายการที่ 7 มา
ถึง รายการ ที่ 46 เอามารายการละ 1 ตัว
d) ทำแบบเดียวกัน แต่ใช้เป็นแถวอื่น เช่น แถวที่ 2 -3 -4 -5.. 999
e) เอาค่าที่แยกได้ของแถวที่ 1 ไปเทียบกับ ค่าที่ตรงข้อกันกับแถวอื่นๆ
f) ถ้าตรงกันเป็น TRUE มีค่าเท่ากับ 1.. // ไม่ตรงกันมีค่าเท่ากับ FALSE มีค่าเท่ากับ 0
h) เอา f + ด้วย 0 เพื่อเปลี่ยน TRUE , FALSE เป็น 1 หรือ 0
i) เอา SUMPRODUCT ไปครอบ หาผลรวม
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#10
Post
by ajsudkedt » Wed Jul 10, 2024 5:07 pm
สรุปก็คือ หากมีจำนวน 30 คำตอบ
ผมต้องปรับช่วงในสูตรเป็น
ROW($C$7:$C$36)
ถูกต้องไหมครับ
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#11
Post
by norkaz » Wed Jul 10, 2024 10:11 pm
ajsudkedt wrote: Wed Jul 10, 2024 5:07 pm
สรุปก็คือ หากมีจำนวน 30 คำตอบ
ผมต้องปรับช่วงในสูตรเป็น
ROW($C$7:$C$36)
ถูกต้องไหมครับ
เพื่อความปลอดภัย การดักเลข ตามจำนวนข้อ เช่น ROW($C$7:$C$36) เป็นเรื่องที่ถูกต้องครับ
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#12
Post
by ajsudkedt » Thu Jul 11, 2024 2:04 am
กราบขอบพระคุณมาก ๆ เลยครับ
ได้ความรู้เพิ่มขึ้นมาเลยครับ
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#13
Post
by ajsudkedt » Fri Jul 12, 2024 12:00 pm
ขอถามต่อครับ
หากมีจำนวนคำตอบที่ต่างกัน
เช่น มี 30 ข้อบ้าง 45 ข้อบ้าง
ต้องปรับสูตรอย่างไร
ที่จะสามารถตรวจนับคำตอบที่ถูก
ได้ทุกจำนวนคำตอบทั้งหมดที่ใส่ลงไป ครับ
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#14
Post
by norkaz » Fri Jul 12, 2024 12:01 pm
ajsudkedt wrote: Fri Jul 12, 2024 12:00 pm
ขอถามต่อครับ
หากมีจำนวนคำตอบที่ต่างกัน
เช่น มี 30 ข้อบ้าง 45 ข้อบ้าง
ต้องปรับสูตรอย่างไร
ที่จะสามารถตรวจนับคำตอบที่ถูก
ได้ทุกจำนวนคำตอบทั้งหมดที่ใส่ลงไป ครับ
ท่านเจ้าของคำถาม ช่วย แนบไฟล์ Excel + ตัวอย่าง คำตอบ มาดูครับ
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#15
Post
by ajsudkedt » Sat Jul 13, 2024 6:35 am
ตอนนี้ผมเปลี่ยนตัวเลขในสูตร
ตามศรชี้ เพื่อแยกเป็นไฟล์
สำหรับตรวจตามจำนวนคำตอบ
คือ
1. ไฟล์สำหรับตรวจ 25 คำตอบ
2. ไฟล์สำหรับตรวจ 30 คำตอบ
3. ไฟล์สำหรับตรวจ 40 คำตอบ
หากเราไม่ต้องการแยกไฟล์
ในการตรวจตามจำนวนของคำตอบที่มี
โดยต้องการตรวจได้ทุกจำนวนคำตอบทั้งหมดที่มีในไฟล์เดียว
จะต้องใช้สูตรอย่างไร
ตามไฟล์แนบและภาพครับ
You do not have the required permissions to view the files attached to this post.
Last edited by
ajsudkedt on Sat Jul 13, 2024 6:37 am, edited 1 time in total.
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#16
Post
by ajsudkedt » Sat Jul 13, 2024 6:38 am
ajsudkedt wrote: Sat Jul 13, 2024 6:35 am
ตอนนี้ผมเปลี่ยนตัวเลขในสูตร
ตามศรชี้ เพื่อแยกเป็นไฟล์
สำหรับตรวจตามจำนวนคำตอบ
คือ
1. ไฟล์สำหรับตรวจ 25 คำตอบ
2. ไฟล์สำหรับตรวจ 30 คำตอบ
3. ไฟล์สำหรับตรวจ 40 คำตอบ
หากเราไม่ต้องการแยกไฟล์
ในการตรวจตามจำนวนของคำตอบที่มี
โดยต้องการตรวจได้ทุกจำนวนคำตอบทั้งหมดที่มีในไฟล์เดียว
จะต้องใช้สูตรอย่างไร
ตามไฟล์แนบและภาพครับ
You do not have the required permissions to view the files attached to this post.
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#17
Post
by norkaz » Sat Jul 13, 2024 6:53 am
...
ท่านเจ้าของคำถาม สามารถใช้หลักการที่ อาจารย์ คนควน แสดงไปแล้วที่ #2 ไปช่วย ในทุกไฟล์ได้ครับ
ทุกไฟล์ B2
=IF(C2="","",SUMPRODUCT((MID($C$1,ROW(INDIRECT("7:"&LEN($C$1))),1)=MID($C2,ROW(INDIRECT("7:"&LEN($C$1))),1))+0))
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
You do not have the required permissions to view the files attached to this post.
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#18
Post
by ajsudkedt » Sat Jul 13, 2024 8:04 am
norkaz wrote: Sat Jul 13, 2024 6:53 am
...
ท่านเจ้าของคำถาม สามารถใช้หลักการที่ อาจารย์ คนควน แสดงไปแล้วที่ #2 ไปช่วย ในทุกไฟล์ได้ครับ
ทุกไฟล์ B2
=IF(C2="","",SUMPRODUCT((MID($C$1,ROW(INDIRECT("7:"&LEN($C$1))),1)=MID($C2,ROW(INDIRECT("7:"&LEN($C$1))),1))+0))
Copy ลงไป
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...
ลองทดสอบแล้ว
ได้ผลดั่งที่ต้องการเลยครับ
กราบขอบพระคุณท่านมาก ๆ ครับ
ajsudkedt
Gold
Posts: 1139 Joined: Thu Jan 28, 2010 11:08 am
Excel Ver: 2019
#19
Post
by ajsudkedt » Mon Jul 15, 2024 4:35 pm
ขอถามต่อครับ
หากข้อใดเฉลยเป็นเลข 9
ทุกคำตอบของข้อนั้นจะเป็นคำตอบที่ถูกทั้งหมด
จะต้องเขียนสูตรอย่างไร
ตามไฟล์แนบครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
norkaz
Gold
Posts: 1739 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#20
Post
by norkaz » Mon Jul 15, 2024 11:36 pm
...
เพื่อให้การ ถามตอบเข้าใจถูกต้อง ตรงกัน โดยไม่เดาเองว่า ผลลัพธ์ หรือความต้องการ
ผลลัพธ์ต้องเป็นแบบนั้น แบบนี้ ท่านเจ้าของคำถามกรุณาช่วยเขียนตัวอย่างคำตอบมาด้วย
การสอบถามด้วยคำถามที่แตกต่างไปจากเดิม หรือ การสอบถาม ที่ไม่เขียนตัวอย่างคำตอบที่
ชัดเจนมา ด้วย อาจทำให้การ ถามตอบผิด ไปจากสิ่งที่ต้องการได้ง่ายครับ
**สนับสนุนฟอรั่ม กรุณา คลิกโฆษณาที่หน้าเพจ
แมวใหญ่- Bigcat9
RCA พระราม9 กรุงเทพฯ
...