: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

ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#1

Post by torisan »

รบกวนขอคำแนะนำหน่อยครับ ผมลงข้อมูลในชีทหลับ แต่อยากให้ข้อมูลที่ลงในชิทแรก ไปแสดงรายการที่แจกแจงตามเงื่อนใขในชีทที่2 ครับ
ขอบคุณครับ
รายการอาหาร.xlsx
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#2

Post by torisan »

รายการอาหาร.xlsx
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#3

Post by DhitiBank »

ลองแบบนี้ครับ
1. ยกเลิกการผสานเซลล์ในส่วนของ รายการอาหาร ในชีท "รายการที่ต้องการให้ออก(แจกแจง)" ก่อน

2. B3 คีย์
=IFERROR(INDEX('รายการอาหาร(ที่ลงข้อมูล)'!$B$2:$B$39,SMALL(IF('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39=D$1,ROW('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39)-ROW('รายการอาหาร(ที่ลงข้อมูล)'!$C$2)+1),ROWS(B$3:B3))),"")
กด Ctrl+Shift ค้างไว้ แล้วกด Enter ครับ

3. E3 คีย์
=IFERROR(INDEX('รายการอาหาร(ที่ลงข้อมูล)'!$D$2:$D$39,SMALL(IF('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39=D$1,ROW('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39)-ROW('รายการอาหาร(ที่ลงข้อมูล)'!$C$2)+1),ROWS(E$3:E3))),"")
กด Ctrl+Shift ค้างไว้ แล้วกด Enter ครับ

4. คัดลอกสูตรลงด้านล่างจนถึงบรรทัดที่ 12

5. คัดลอกสูตรจากตารางโต๊ะที่ 1 ไปทางขวา (โต๊ะที่ 2 และที่ 3)

6. เวลาคัดลอกสูตรลงมายังตารางที่ถัดลงไปด้านล่าง ให้เปลี่ยนตำแหน่งอ้างอิงที่ระบายสีแดงเอาไว้ครับ เช่น
ในตารางโต๊ะที่ 4 หากคัดลอกสูตรจากโต๊ะที่ 1 ลงมาแล้ว ให้ไปที่ formula bar แล้วเปลี่ยนตรงที่ระบายสีแดงโดย
6.1 ที่ B16 : เป็น D$14 และ B$16:B16 ตามลำดับ
6.2 ที่ E16 : เป็น D$14 และ E$16:E16 ตามลำดับ
6.3 แก้ไขแล้วกด Ctrl+Shift+Enter ครับ แล้วค่อยคัดลอกสูตรลงถึงแถวที่ 25
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#4

Post by snasui »

:D อีกตัวอย่างครับ

ที่ชีท รายการที่ต้องการให้ออก(แจกแจง)
  1. เซลล์ B3 คีย์สูตร
    =IFERROR(INDEX('รายการอาหาร(ที่ลงข้อมูล)'!$B$2:$B$39,AGGREGATE(15,6,1/('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39=$D$1)*(ROW('รายการอาหาร(ที่ลงข้อมูล)'!$A$2:$A$39)-ROW('รายการอาหาร(ที่ลงข้อมูล)'!$A$2)+1),$A3)),"")
    Enter > Copy ลงด้านล่าง
  2. เซลล์ E3 คีย์สูตร
    =IFERROR(INDEX('รายการอาหาร(ที่ลงข้อมูล)'!$D$2:$D$39,AGGREGATE(15,6,1/('รายการอาหาร(ที่ลงข้อมูล)'!$C$2:$C$39=$D$1)*(ROW('รายการอาหาร(ที่ลงข้อมูล)'!$A$2:$A$39)-ROW('รายการอาหาร(ที่ลงข้อมูล)'!$A$2)+1),$A3)),"")
    Enter > Copy ลงด้านล่าง
จากนั้น Copy สูตรไปใช้กับพื้นที่อืน ๆ โดยเปลียนเซลล์ที่ได้ทำการระบายสีเอาไว้ในสูตรด้านบนให้อ้างอิงกับเซลล์ที่ใช้จริง
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#5

Post by torisan »

ขอบคุณทั้ง 2 ท่านนะครับ ทำตามทั้ง 2 ท่านแล้ว เป็นผลสำเร็จครับ ต้องขอขอบคุณมากๆเลยครับ (อยากเก่งอย่างนี้บ้างจัง)
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#6

Post by DhitiBank »

ขอบพระคุณครับอาจารย์ เพิ่งเคยเห็นการใช้งาน Aggregate นี่แหละครับ เข้าไปอ่านคำอธิบายสูตรแล้ว... :shock: option เยอะเหลือเกิน
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ (ขอคำแนะนำรอบ2)

#7

Post by torisan »

1.xlsx
จากคำถามที่ตั้งมาตอนแรกได้รับคำแนะนำมาเป็นอย่างดี แต่เมื่อนำมาใช้กับงานอีกประเภทซึ่งมีลักษณะงานที่คล้ายๆกัน แต่ไม่สามารถใช้งานได้จึงอยากรบกวนอีกครั้งครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#8

Post by snasui »

:D ทำตามด้านล่างครับ
  1. C5 คีย์สูตร
    =IFERROR(INDEX(PLAN!$E$15:$E$485,AGGREGATE(15,6,1/(PLAN!$Q$15:$Q$484=$L$2)*ROW(PLAN!$E$15:$E$485)-ROW(PLAN!$E$15)+1,$B5)),"")
    Enter > Copy ลงด้านล่าง
  2. E5 คีย์สูตร
    =IFERROR(INDEX(PLAN!$H$15:$H$485,AGGREGATE(15,6,1/(PLAN!$Q$15:$Q$484=$L$2)*ROW(PLAN!$E$15:$E$485)-ROW(PLAN!$E$15)+1,$B5)),"")
    Enter > Copy ลงด้านล่าง
  3. N5 คีย์สูตร
    =SUMIFS(PLAN!S$15:S$485,PLAN!$E$15:$E$485,$C5,PLAN!$Q$15:$Q$485,$L$2)
    Enter > Copy ไป M5
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#9

Post by torisan »

ขอบคุณอาจารย์ครับ แต่ขออนุญาติถามต่อยอดอีกนิดนะครับ ถ้าในช่อง a1,a38,a75 และต่อไปอีเรื่อยๆ ผมอยากลงข้อมูลให้รันอัตโนมัตล่ะครบ โดย A1 ให้คีย์ 1 A38 ให้คีย์ 2 และAึ75 ให้คีย์ 3 และรันต่อไปเรื่อยๆครับ
User avatar
logic
Gold
Gold
Posts: 1511
Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#10

Post by logic »

ให้คัดลอกสูตรแล้วเปลี่ยนตำแหน่งอ้างอิงดูเองก่อนดีไหมครับ

ทำแล้วติดปัญหาก็ส่งมาถามกันได้ครับ :)
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#11

Post by torisan »

เรียนอาจารย์ครับ (ท่านผู้รู้และให้วิชาความรู้ถือเป็นครูทุกท่านนะครับอย่าน้อยใจนะ)
จากที่สูตรที่ท่านให้มาผลลองทำแล้วทำได้ แต่เมื่อsave แล้ว แล้วปิดนำมาเปิดที่เครื่องอื่นซึ่ง สูตรจะมีการเปลี่ยนแปลงเล็กน้อย และสูตรก็ไม่ทำงานครับ เป็นเพราะExcel คนล่ะเวอร์ชั่นหรือไหมครับ เครื่องผมเป็น 2010 และเครื่องที่เปฺิดภายหลังเป็น 2007

สูตรที่แสดง =IFERROR(INDEX(PLAN!$E$15:$E$485,_xlfn.AGGREGATE(15,6,1/(PLAN!$Q$15:$Q$484=$L$335)*ROW(PLAN!$E$15:$E$485)-ROW(PLAN!$E$15)+1,$B338)),"")

เท่าที่สังเกตคือจะมี _xlfn เพิ่มเข้ามาครับ


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

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#12

Post by snasui »

torisan wrote:เป็นเพราะExcel คนล่ะเวอร์ชั่นหรือไหมครับ
:D ใช่แล้วครับ กรณีต้องการใช้ได้กับทุก Version ในใช้สูตรที่คุณ DhitiBank แนะนำครับ
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#13

Post by torisan »

เรียนอาจารย์ และคุณDhitiBank
ก่อนอื่นต้องขอขอบคุณอีกครั้งนะครับ ผมได้ลองนำมาดัดแปลงในการใช้งานแล้ว แต่ติดปัญหาในเรื่องของการ copy ลงมาในหน้า 2,3,4,5,.....ลงมาเรื่อยๆ
พอจะมีวิธีบล๊อคหรือการcopy แบบง่ายให้สูตรที่เราตั้งเอาไว้เปลี่ยนเอง หรือมีวิธีแนะนำไหมครับ
ขอบคุณครับ
Plan.xlsx
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#14

Post by snasui »

:D หน้า 2, 3, 4, 5 ที่กล่าวถึงอยู่ที่ชีทไหน เซลล์ไหนครับ
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#15

Post by torisan »

เรียนอาจารย์
ชีท RT50&RF10ใหม่ครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#16

Post by snasui »

:D อ่านแล้วไม่เข้าใจว่ากำลังกล่าวถึงปัญหาใด ช่วยชี้ให้เห็นว่ากำลังทำอะไร ปัญหาคืออะไร คำตอบที่ต้องการคืออะไรครับ

หากเป็นปัญหาของปริมาณข้อมูลที่มากขึ้นแล้วสูตรเดิมไม่ครอบคลุม ให้ปรับช่วงเซลล์ในสูตรตามปริมาณข้อมูลจริงครับ
torisan
Member
Member
Posts: 16
Joined: Wed Jun 18, 2014 12:00 am

Re: ลงข้อมูลชีทแรกให้แจกแจงรายการอีกชิทครับ

#17

Post by torisan »

เรียนอาจารย์ครับ
ตอนนี้ผมกำลังใช้วิธีนั่งก๊อปและเปลี่ยนข้อมูลแล้วครับ แต่ยังไม่เสร็จ ขอบคุณสำหรับการตอบปัญหาที่รวดเร็วมากครับ
ต้องขอบคุณจริงๆหากผมติดปัญหาในเรื่องอื่นผมจะมาถามอาจารย์และท่านอื่นๆที่รู้นะครับ
ช่วงนี้นั่งอ่านและเก็บข้อมูลในหัวข้อของท่านอื่นอยู่ครับ
ขอบคุณครับ
:cp: :cp: :cp:
Post Reply