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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#1
Post
by peachkub » Sun Jan 29, 2017 2:44 pm
พอดีกำลังทำโปรแกรม ตัดเกรดอยู่ครับ
มีการผูกสูตรโดยให้แสดงเกรดตามเงื่อนไขเรียบร้อยแล้ว
แต่อยากให้ ผู้ที่ได้เกรด F แสดงสีแดงที่ตัวอักษร F ครับเพื่อง่ายก็ต่อการตรวจสอบ
ขอบคุณครับ
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 » Sun Jan 29, 2017 3:05 pm
คลุมคอลัมน์ที่แสดงผลเป็น F จากนั้นทำตามด้านล่างครับ
เข้าเมนู Home > Conditional Formatting > New Ruls
ภายใต้ Select a Rule Type: เลือก Format only cells that contain
ภายใต้ Format only cells with: เลือกช่องแรกเป็น Cell Value > ช่องที่สองเลือก equal to > ช่องสุดท้ายคีย์ F
คลิกปุ่ม Format เพื่อกำหนดรูปแบบตามต้องการ > OK > OK
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#3
Post
by peachkub » Sun Jan 29, 2017 4:05 pm
snasui wrote: คลุมคอลัมน์ที่แสดงผลเป็น F จากนั้นทำตามด้านล่างครับ
เข้าเมนู Home > Conditional Formatting > New Ruls
ภายใต้ Select a Rule Type: เลือก Format only cells that contain
ภายใต้ Format only cells with: เลือกช่องแรกเป็น Cell Value > ช่องที่สองเลือก equal to > ช่องสุดท้ายคีย์ F
คลิกปุ่ม Format เพื่อกำหนดรูปแบบตามต้องการ > OK > OK
สอบถามเพิ่มเติมครับ ขอบคุณสำหรับคำตอบครั้งที่แล้วอีกครั้งครับ
ตอนนี้ผมได้สร้าง Sheet 2 จะทำเป็นเอกสารรายงานสรุปว่าใครที่ติด F ควรเขียนสูตรอย่างไรครับ โดยดึงข้อมูลเฉพาะ ผู้ที่ติด F มาลงใน Sheet2 โดยอัตโนมัติ
เพิ่มเติม ในเซลล์ B3 ผมได้ใส่สูตร IF(A3="","",VLOOKUP(A3,เกรด!A$3:E$43,2)) เอาไว้ครับ เพื่ออิงค่าจาก A3
หากใช้ศัพท์ผิดขออภัยครับ
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:
#4
Post
by snasui » Sun Jan 29, 2017 4:37 pm
ตัวอย่าง สูตรตามด้านล่างครับ
ที่ Sheet2 เซลล์ A3 คีย์
=IFERROR(INDEX(Sheet1!A$3:A$100,SMALL(IF(Sheet1!$P$3:$P$100="F",ROW(Sheet1!$A$3:$A$100)-ROW(Sheet1!$A$3)+1),ROWS(A$3:A3))),"")
Ctrl+Shift+Enter > Enter > Copy ไปด้านขวาถึง E3 แล้ว Copy ลงด้านล่าง กรุณาอ่าน Note ด้านล่างอย่างละเอียดครับ
ควรแนบไฟล์ตัวอย่างพร้อมแสดงตัวอย่างคำตอบที่ต้องการเสมอ ผู้ตอบจะได้ทราบว่าตำแหน่งข้อมูลอยู่ที่ชีตใด เซลล์ใด จะได้เขียนสูตรให้ตรงกับที่ต้องการได้เลย สำหรับกรณีนี้หากยังติดปัญหาให้ปรับสูตรมาเองก่อน ติดตรงไหนค่อยแนบไฟล์ตัวอย่างมาถามกันต่อครับ
! Note: Ctrl+Shift+Enter เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น { =YourFormulas(...)} ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง
Last edited by
snasui on Sun Jan 29, 2017 5:45 pm, edited 1 time in total.
Reason: แก้ไข -1 เป็น +1
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#5
Post
by peachkub » Sun Jan 29, 2017 4:57 pm
ขออภัยสำหรับความผิดพลาดครับ
ตอนนี้ผมมีเอกสาร 2 Sheet คือ 1.เกรด และ 2.Sheet2
โดยต้องการให้ Sheet2 แสดงผู้ที่ติด F โดยอิงจากเกรดที่อยู่คอลัมภ์ P จาก "เกรด" ถ้ามีติด F จำนวน 2 คน อยากให้ Sheet2 แสดงผลทั้ง 2 คน โดยอัตโนมัติ
1.jpg
ดังตัวอย่างสมมติว่ามีผู้ติด F 2รายการคือ ฉัตรฑริกา และสุพรรณิการ์ ต้องการให้ Sheet2 แสดงรายชื่อทั้งหมด 2 คนโดยอัตโนมัติครับ โดยมีเลขที่ >เลขประจำตัว >คำนำหน้า > ชื่อ > สกุล
ภาพ2.jpg
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:
#6
Post
by snasui » Sun Jan 29, 2017 5:00 pm
ให้ทำตามที่ผมตอบไปแล้วด้านบน
โดยปรับชื่อชีตให้ตรงกับที่ใช้จริง หากยังติดปัญหาให้แนบไฟล์ที่ติดปัญหานั้นมาด้วยครับ
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#7
Post
by peachkub » Sun Jan 29, 2017 5:22 pm
ตอนนี้ที่ A3 แสดงเป็นขวัญฤดี ครับ ควรจะเป็นฉัตฑทริกา
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#8
Post
by snasui » Sun Jan 29, 2017 5:26 pm
peachkub wrote: ตอนนี้ที่ A3 แสดงเป็นขวัญฤดี ครับ ควรจะเป็นฉัตฑทริกา
กรุณาแนบไฟล์ที่เป็นปัญหามาด้วย อ่านที่ผมโพสต์ให้ละเอียดทุกอักขระครับ
snasui wrote: หากยังติดปัญหาให้แนบไฟล์ที่ติดปัญหานั้นมาด้วยครับ
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#9
Post
by peachkub » Sun Jan 29, 2017 5:30 pm
ขออภัยอย่างสูงครับเข้าใจผิดว่าเป็นแนบภาพ ตามนี้เลยครับ
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:
#10
Post
by snasui » Sun Jan 29, 2017 5:34 pm
คีย์สูตรไม่ถูกต้องและกดแป้นให้รับสูตรไม่ถูกต้อง
ปรับสูตรเป็นด้านล่างครับ
=IFERROR(INDEX(เกรด!A$3:A$100,SMALL(IF(เกรด!$P$3:$P$100="F",ROW(เกรด!$A$3:$A$100)-ROW(เกรด!$A$3)+ 1),ROWS(A$3:A3 ))),"")
สำหรับ -1 ผมคีย์ผิดไป ที่ถูกคือ +1 ขออภัยด้วยครับ
สำหรับวิธีการกดแป้นให้รับสูตรกรุณาอ่านวิธีการในโพสต์ด้านบนอย่างละเอียดทุกอักขระครับ
peachkub
Member
Posts: 18 Joined: Sun Jan 29, 2017 2:41 pm
#11
Post
by peachkub » Sun Jan 29, 2017 7:45 pm
กระจ่างแล้วครับ ขอบคุณมากครับ