: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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

สูตรเชื่อมหลายๆ ชีทครับ

#1

Post by nidnykung »

จากครั้งที่แล้ว ผมขอสูตรในแนวนอนให้แสดงข้อมูลรายละเอียดจากชีทอ้างอิง แต่ทีนี้พอลองทำจริง มันมีหลายหมวด ก็คือมีหลายชีทครับ ชีทละหมวด ผมจึงอยากรบกวน ขอสูตรที่ทำให้มองหาข้อมูลในชีทอื่นๆ ด้วยครับ ว่าต้องใช้ตัวอะไรเชื่อมระหว่างสูตรหรือเปล่า ผมลองใส่ + กับ & มันก็ไม่ได้ครับ ดังที่แนบมานี้ครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรเชื่อมหลายๆ ชีทครับ

#2

Post by bank9597 »

:D รบกวนอธิบายขั้นตอนวิธีทำงานอีกครั้งได้ไหมครับ รวมถึงตัวอย่างคำตอบที่ถูกต้องด้วยครับ
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#3

Post by nidnykung »

ครับ คือ ผมต้องการให้เราคีย์รหัส ในชีทหน้าหลัก แล้วให้ไปดึงรายละเอียดของชีทอ้างอิงในคอลัมน์ ชื่อสินค้า ราคาขาย และหน่วยมาลงให้ถูกต้องในชีทหน้าหลักครับ แต่ที่ทำอยู่นั้นดึงข้อมูลได้จากชีทลูกอมชีทเดียวครับ ซึ่งผมต้องการให้สามารถดึงข้อมูลจากชีทรองเท้า กับแก้วได้ด้วยครับ ก็คือให้ชีทหน้าหลักสามารถหารหัสได้ทั้ง 3 ชีทครับ
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรเชื่อมหลายๆ ชีทครับ

#4

Post by bank9597 »

:D สูตรที่อยู่ในชีท ลูกอม เซลล์ A4 ลงมา สามารถใช้งานได้ตรงที่ต้องการหรือไม่ครับ หากตรงความต้องการแล้ว เราสามารถนำสูตรนี้ไปใช้ในชีทอื่นๆด้วยหลักการเดียวกันครับ
เว้นแต่ว่าความต้องการของคุณเป็นไปอีกแบบ ซึ่งไม่ใช่ดังที่ทำมาแล้วในไฟล์แนบ
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#5

Post by nidnykung »

bank9597 wrote::D สูตรที่อยู่ในชีท ลูกอม เซลล์ A4 ลงมา สามารถใช้งานได้ตรงที่ต้องการหรือไม่ครับ หากตรงความต้องการแล้ว เราสามารถนำสูตรนี้ไปใช้ในชีทอื่นๆด้วยหลักการเดียวกันครับ
เว้นแต่ว่าความต้องการของคุณเป็นไปอีกแบบ ซึ่งไม่ใช่ดังที่ทำมาแล้วในไฟล์แนบ
ใช่ครับ ที่ผมต้องการ แต่ผมไม่ได้ต้องการแค่ในชีทลุกอมอย่างเดียวครับ ผมต้องการให้มันเอาของชีท รองเท้า และ แก้วด้วย ซึ่งผมไม่รู้ว่าจะพิมพ์สูตรว่าอย่างไร ให้มันดึงมาจาก 2 ชีทนี้ด้วยครับ
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรเชื่อมหลายๆ ชีทครับ

#6

Post by bank9597 »

:D งานเข้าพอดีครับ เลยไม่ได้ตอบได้ทันที
ลองตามนี้ครับ
List ชื่อชีท และ รหัสที่อยู่ในชีทออกมาดังนี้
ในเซลล์ M4:N12
1 ลูกอม
2 ลูกอม
3 ลูกอม
4 รองเท้า
5 รองเท้า
6 รองเท้า
7 แก้ว
8 แก้ว
9 แก้ว

ที่เซลล์ I4 คีย์ =IFERROR(VLOOKUP($C4,$M$4:$N$11,2,0),"") คัดลอกลงมา
ที่เซลล์ E4 คีย์ =IFERROR(OFFSET(INDIRECT($I4&"!"&"$A$2"),0,MATCH($C4,INDIRECT($I4&"!"&"$2:$2"),0)+COLUMNS($E4:E4)-1,1),"")
คัดลอกไปทางขวามือแล้วลงล่างพร้อมกันครับ
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#7

Post by nidnykung »

คือแบบนี้ครับ ในอันที่ผมแนบไฟล์ไป ตรงชีทหน้าหลัก column E จะใส่สูตร =OFFSET(ลูกอม!$A$2,0,MATCH($C7,ลูกอม!$2:$2,0)+COLUMNS($E7:E7)-1,1) ซึ่งก็คือให้มันไปดึงรายละเอียดจากชีทลูกอมมาแสดง แต่ทีนี้ว่า ในชีทลูกอมมีรหัสสุดแค่ 3 ซึ่งรหัสที่ 4 เป็นต้นไปอยู่คนละหมวด ก็เลยย้ายไปคนละชีทครับ ถ้าผมอยากให้มันหารหัสแบบในชีทลูกอม แต่มองในชีทรองเท้าด้วย ก็จะเป็น =OFFSET(รองเท้า!$A$2,0,MATCH($C7,รองเท้า!$2:$2,0)+COLUMNS($E7:E7)-1,1) แต่ทีนี้ว่า อยากให้มันมองหาทั้ง 2 ชีทนี้พร้อมกันเลย แบบว่า รหัส ตรงกับอันไหนในชีทใด ก็ดึงข้อมูลในชีทนั้นมาแสดงเลยครับ แล้วผมไม่รู้ว่าจะเชื่อมสูตรทั้ง 2 สูตรนี้อย่างไรดีครับ เพราะถ้าทำ column เพิ่มที่เขียนรหัสมันมีเยอะมากเลยครับ หรือว่าไม่มีทางอื่นแล้วครับ
joo
Gold
Gold
Posts: 1213
Joined: Sat Apr 17, 2010 3:50 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#8

Post by joo »

ไม่แน่ใจว่าจุดประสงค์หลักคือต้องการทราบสินค้าคงคลังใช้หรือไม่ :?: ลองทำแบบวิธีง่ายคือเก็บข้อมูลทุกอย่างไว้ในซีท Database ถ้าต้องการสรุปสินค้าตัวไหนก็เรียกมาดูได้ตามต้องการครับ :D
You do not have the required permissions to view the files attached to this post.
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#9

Post by nidnykung »

joo wrote:ไม่แน่ใจว่าจุดประสงค์หลักคือต้องการทราบสินค้าคงคลังใช้หรือไม่ :?: ลองทำแบบวิธีง่ายคือเก็บข้อมูลทุกอย่างไว้ในซีท Database ถ้าต้องการสรุปสินค้าตัวไหนก็เรียกมาดูได้ตามต้องการครับ :D
คือจะใช้ดูรายละเอียดแต่ละวันด้วยครับ แล้วก็ดูสินค้าคงคลังด้วย ซึ่ง ถ้าไม่แยกหมวด เอาไว้ใน database เดียว มันจะได้ชีทประมาณ เกือบ 300 เลยครับ เอามาใส่ในอันเดียวมันก็จะเป็นแนวนอนเกิน column ZZ อีกครับ ยากในการดูย้อนหลังครับ เพราะว่าข้อมูลอันนึงก็กินไปประมาณ 5 column ครับ อันนี้เป็นตัวอย่างครับก็เลยตัดมานิดหน่อยครับ ที่่เรียงข้อมูลแนวนอน เพื่อว่าจะให้แนวตั้งไว้ลงวันที่สินค้าเข้า-ออกครับ ซึ่งจะใช้เก็บข้อมูลต่อ ๆ กันทุกวันครับ
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรเชื่อมหลายๆ ชีทครับ

#10

Post by bank9597 »

:shock: ที่ผมตอบไป ไม่ตรงในส่วนไหนบ้างครับ ลองอธิบายให้ฟัง หรือ ทำตัวอย่างคำตอบที่ถูกต้องมาให้ดูอีกครั้งครับ
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#11

Post by nidnykung »

bank9597 wrote::shock: ที่ผมตอบไป ไม่ตรงในส่วนไหนบ้างครับ ลองอธิบายให้ฟัง หรือ ทำตัวอย่างคำตอบที่ถูกต้องมาให้ดูอีกครั้งครับ
คือ ผมลองใส่รหัส 9 แล้วมันแสดงผลเป็น N/A ซึ่งผมไม่รู้ว่ามันผิดตรงไหนครับ แล้วพอจะมีวิธีอื่นที่ไม่ต้องสร้าง column I, M,N หรือไม่ครับ ซึ่งผมคิดว่า มันน่าจะพอมีตัวอักษรอะไรที่ใช้ในการเชื่อม OFFSET ของชีทแต่ละชีท ให้มันมาแสดงผลในเซลเดียวหรือไม่ครับ เช่นว่า OFFSETลูกอม + OFFSETรองเท้า + OFFSET แก้ว ดูว่ารหัสตรงกับของชีทไหน ก็ดึงชีทนั้นมา แบบนี้มีไหมครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรเชื่อมหลายๆ ชีทครับ

#12

Post by bank9597 »

:lol: ลองตามนี้ครับ
ที่ I4 ปรับสูตรเป็น =VLOOKUP($C4,$M$4:$N$12,2,0) คัดลอกลงมา
คุณต้องปรับสูตรอ้างถึงแหล่งข้อมูลที่มีอยู่ ว่ามันครอบคลุมหรือไม่
แล้วพอจะมีวิธีอื่นที่ไม่ต้องสร้าง column I, M,N หรือไม่ครับ ซึ่งผมคิดว่า มันน่าจะพอมีตัวอักษรอะไรที่ใช้ในการเชื่อม OFFSET ของชีทแต่ละชีท ให้มันมาแสดงผลในเซลเดียวหรือไม่ครับ เช่นว่า OFFSETลูกอม + OFFSETรองเท้า + OFFSET แก้ว ดูว่ารหัสตรงกับของชีทไหน ก็ดึงชีทนั้นมา แบบนี้มีไหมครับ
:lol: สำหรับตัวผมแล้วไม่คิดว่าจะมีครับ เพราะการดึงข้อมูลในลักษณะนี้จะต้องใช้สูตร Indirect เข้าช่วยอย่างแน่นอน
หรือคุณต้องใช IF เข้ามาดัก แต่คุณจะเจอกับสูตรที่ยาวยืด

การที่ผมแยกรายการชื่อชีท รหัสสินค้า ลงในเซลล์ M4:N12 นั้น ก็เพื่อให้คุณใส่ชื่อชีทและรหัสลงไปเป็นฐานข้อมูลไว้ โดยที่ไม่ต้องไปใส่ชื่อชีทลงในสูตรให้ยาว ซึ่งหากมีอยู่ 100 ชีท คุณก็ต้องเชื่อมสูตรให้ครอบคลุม 100 ชีท ซึ่งมันเป็นไปไม่ได้ สู้การลิสข้อมูลออกมาเป็นรายการแล้วค่อยเชื่อมโยงสูตรในภายหลังไม่ได้

การเก็บข้อมูลลักษณะนี้ ทำให้การดึงข้อมูลลำบากครับ การทำเหมือนที่คุณ Joo แนะนำคือการทำแบบ Database เก็บข้อมูลไว้ในชีทเดียวกันนั้น จะเหมาะสมมาก เพราะเราสามารถใช้สูตรง่ายกว่า สั้นกว่าและไม่ยุ่งยากครับ
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
nidnykung
Member
Member
Posts: 32
Joined: Tue May 15, 2012 12:00 pm

Re: สูตรเชื่อมหลายๆ ชีทครับ

#13

Post by nidnykung »

อ่า OK เข้าใจแล้วครับ มันเป็นอย่างนี้นี่เอง เดี๋ยวผมลองทำตามดูก่อนครับ ถ้ามีปัญหาติดขัดยังไง จะแวะมารบกวนใหม่นะครับ ขอบคุณทุกคนมากครับ
Post Reply