: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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#21

Post by snasui »

:D อธิบายมาพอสังเขปครับว่า ต้องการทำอะไร ปัญหาคืออะไร ต้องการคำตอบเป็นอย่างไร เพื่อให้สะดวกในการค้นหาของเพื่อน ๆ เพราะการค้นหาของเวบนั้นไม่สามารถค้นเข้าไปถึงไฟล์แนบได้ครับ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#22

Post by YOYIYOYI »

ตัวอย่างยกมาแค่ 4 เดือนครับ ที่ทำไฮไลน์ไว้ครับต้องการพิมพ์ A1:L13 เป็นเดือนมกราคม ผมต้องซ่อนตั้งแต่ คอลัม M1:AD13พอสิ้นเดือน ก้อจะเป็นเดือน กุมภาพันธ์ ครับ ต้องการพิมพ์ผมก็ จะซ่อน G1:L13 ซึ่งจะเป็นของเดือน มกราคม แล้ว M1:R13 ก็จะมาแทนครับ เป็นเดือน กุมภาพันธ์ และต้องซ่อน R1:AD13 อีกถ้าจะพิมพ์ เดือน กุมภาพันธ์ ก็เป็นแบบนี้ไปทุกเดือนนะครับซึ่งมันลำบากมากครับเนื่องจากไฟล์งานจริงคอลัมที่ต้องการพิมพ์มันเยอะกว่านี้นะครับ อาจารย์พอจะมีวิธีแก้และแนะนำได้ไหมครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#23

Post by snasui »

:D ตัวอย่างการ Set Print Area โดยเราสามารถกำหนดพื้นที่ที่ต้องการไว้ก่อน จากนั้นเมื่อตอน Print เราสามารถที่จะเลือก Print เฉพาะหน้าใด ๆ ได้ครับ
You do not have the required permissions to view the files attached to this post.
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#24

Post by YOYIYOYI »

ขอบคุณครับอาจารย์ เดี๋ยวผมต้องไปทำเองก่อนครับที่บริษัท ที่บ้านไม่สามารถทำได้ แล้วจะกลับมาแจ้งผลครับ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#25

Post by YOYIYOYI »

สามารถทำตามอาจารย์ได้แล้วครับ แต่ติดอยู่อีกนิดครับ อาจารย์ จากตัวอย่างที่อาจารย์ให้มานะครับ คือถ้าต้องการพิมพ์ของเดือน มกราคม จะมีคอลัม A ถึง คอลัม F ติดมาให้ได้ตามความต้องการครับ แต่พอเดือน กุมภาพันธ์ นะครับ จะทำยังไงให้เวลาพิมพ์แล้ว จะมีคอลัม A ถึง คอลัม F ติดมาเหมือนเดือน มกราคม คือต้องการให้ติดมาทุกๆเดือนนะครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#26

Post by snasui »

:D ลองตามนี้ครับ

เข้าเมนู Page Layout > Print Titles > คลิกลงในช่องตามภาพด้านล่าง > คลุมคอลัมน์ที่ต้องการจะให้พิมพ์ซ้ำ > OK
You do not have the required permissions to view the files attached to this post.
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#27

Post by YOYIYOYI »

:D ขอบคุณอาจารย์มากครับผม ได้ตามที่ต้องการครับ กระจ่างไปหลายข้อสงสัยเลยครับ ก็ยังไม่จบสักทีครับ ถามต่อเลยนะครับ ตอนนี้ไฟล์ที่ผมทำไฟล์จริงครับ มีประมาณเกือบ 50 ชีท นะครับ พอเปิดใช้งานไฟล์ค่อนข้างอืด เพราะแต่ละชีท ถ้าเซลล์ไหนยังไม่มีการคำนวนผมจะติดสูตร =IF(CELL="","",CELL) ทุกชีทเลย ที่ทำให้ไฟล์ทำงานช้าลง มีผลจากสูตรพวกนี้ไหมครับอาจารย์ หรือว่ามีวิธีแก้ไขไหมครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#28

Post by snasui »

:D ทุกสูตรที่ใช้มีผลทำให้เกิดการคำนวณครับ ใช้มากก็คำนวณมาก แม้ If จะคำนวณเร็วแต่ใช้มากขนาดนั้นก็ย่อมคำนวณช้าลงมากครับ

ปกติการทำงานกับ Excel อย่างมีประสิทธิภาพควรจะทำข้อมูลให้เป็น Database คือข้อมูลเดียวกันอยู่ในชีทเดียวกันเรียงต่อกันไปด้านล่างเรื่อย ๆ กรณีต้องการทำรายงานก็ค่อยดึงข้อมูลจาก Database มาแสดงครับ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#29

Post by YOYIYOYI »

ขอบคุณครับอาจารย์ที่แนะนำ จะนำไฟล์ที่ทำเสร็จไปใช้งานสักระยะก่อนครับ จะได้รู้ปัญหาให้มากขึ้นติดตรงอีกบ้าง แล้วค่อยนำมารวบรวมทำ DATABASE แบบอาจารย์แนะนำ เพื่อการประมวลผลที่ดีขึ้น :D :D ถามต่ออีกนิดนะครับ ประดับความรู้ ปกติ EXCEL ไฟล์ที่บันทึกข้อมูลแล้วขนาดไฟล์ใหญ่ขึ้นประมาณ 5 MB ถึงแม้ว่าไม่ได้ใช้สูตรอะไรมากมายเหมือนคำถามก่อนหน้านี้ มันยังจะเป็นส่วนทำให้ไฟล์อืด ทำงานช้าลงเหมือนติดสูตรอยู่เช่นเดียวกันใช่ไหมครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#30

Post by snasui »

:D ปกติไฟล์ที่มีขนาดใหญ่จากที่มีข้อมูลมากทำให้เปิดไฟล์ช้าลงบ้าง แต่เราสามารถที่จะเข้าถึงข้อมูลต่าง ๆ ทีมีได้เร็วเหมือนปกติครับ กรณีที่มีสูตรบ้างแต่ไม่มาก ก็ต้องดูว่าสูตรเป็นแบบไหน ถ้าสูตรประเภท Vlookup แบบตรงตัวจากปริมาณข้อมูลมาก ๆ แม้จะใช้สูตรไม่มากนักก็ทำให้ไฟล์ช้าลงได้เหมือนกัน ปัจจัยเรื่องไฟล์ช้าต้องดูหลายเรื่องพอสมควร ด้าน Hardware ก็เกี่ยวข้องด้วย เช่น RAM น้อย CPU ความเร็วต่ำ หรือต่อให้ RAM เยอะ CPU เร็ว หากทำงานพร้อมกันหลายงานทรัพยากรของเครื่องก็ถูกแบ่งไปใช้งานอื่น ๆ ด้วย ก็ย่อมมีผลให้ไฟล์ช้าได้ครับ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#31

Post by YOYIYOYI »

:D :D จากคำถามแรกที่ผมได้เริ่มถามข้อสงสัยกับอาจารย์ และทดลองทำงานกับ EXCELจนตอนนี้งานผมใกล้ที่จะสามารถนำมาใช้งานได้จริงๆสักที ตอนนี้หัวสมองโล่งไปเยอะเลยครับ หลังจากศึกษาทำงานชิ้นนี้มาเกือบ 1 เดือน :D :D
ขอบคุณอาจารย์ จริงๆครับ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#32

Post by YOYIYOYI »

หลังจากนำไปใช้งานได้สักพักก็เริ่มเจอปัญหาอีกนิดครับ อาจารย์เลยต้องขอคำชี้แนะต่อครับ
แต่ไฟล์แนบที่ผมนำมาเป็นแบบตัวอย่างครับ รบกวนด้วยครับ
เริ่มเลยนะครับ คือผมมีชีทอยู่ชีทหนึ่ง ชื่อ รายงาน ครับ และชีทนี้จะมีลิสรายการให้เลือก ยกตัวอย่างเป็น พ.ศ. ครับ
ตัวอย่าง ถ้าต้องการดึงข้อมูล พ.ศ. 2555 ก็ให้นำค่าจาก ชีท 55 ตั้งแต่ คอลัม c6:n15 มาแสดง ถ้าต้องการดึงข้อมูล พ.ศ. 2556 ก็ให้นำค่าจาก ชีท 56 ตั้งแต่ คอลัม c6:n15 มาแสดง เป็นต้นครับ
ผมลองใส่สูตร vlookup ไป แต่มันเลือกในลิสมาแสดงไม่ได้นะครับ ถ้าได้ก็ต้องแก้ในเซลล์ เป็นเซลล์ๆไป มันเลือกในลิสไม่ได้ครับ รบกวนอาจารย์ด้วยครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#33

Post by bank9597 »

:D สามารถใช้ IF เข้ามาช่วยได้ครับ

ผมจะตอบด้วยสูตร Vlookup น่ะครับ เพราะผู้ถามมีความรู้ในเรื่องสูตรสูตรนี้แล้ว
ที่ชีท "รายงาน" ที่ C6 คีย์ =IF($C$3="","",IF($C$3=2555,VLOOKUP($B6,'55'!$B$6:$N$15,COLUMNS($C6:C6)+1,0),IF($C$3=2556,VLOOKUP($B6,'56'!$B$6:$N$15,COLUMNS($C6:C6)+1,0),IF($C$3=2557,VLOOKUP($B6,'57'!$B$6:$N$15,COLUMNS($C6:C6)+1,0),""))))

คัดลอกไปทางขวามือจนสุดคอลัมน์เดือนครับ :D
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#34

Post by YOYIYOYI »

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

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#35

Post by bank9597 »

ตามสูตรผมเข้าใจว่าต้องเข้าไปเพิ่มตาม พ.ศ.
เข้าไปอีก ไม่ทราบว่าเข้าใจถูกต้องหรือไม่
:D

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

เนื่องจากการเก็บข้อมูลของคุณไม่ได้เป็นแบบ database จึงยากต่อการใช้สูตรครับ แต่หากคุณเอาข้อมูลที่แยกชีทเหล่านั้น พามาเก็บในชีทเดียวกัน ก็จะสามารถนำข้อมูลใช้ได้อย่างมากมายครับ อย่าว่าแต่เพิ่มลำดับเลยครับ :D
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#36

Post by snasui »

YOYIYOYI wrote:หลังจากนำไปใช้งานได้สักพักก็เริ่มเจอปัญหาอีกนิดครับ อาจารย์เลยต้องขอคำชี้แนะต่อครับ
แต่ไฟล์แนบที่ผมนำมาเป็นแบบตัวอย่างครับ รบกวนด้วยครับ
เริ่มเลยนะครับ คือผมมีชีทอยู่ชีทหนึ่ง ชื่อ รายงาน ครับ และชีทนี้จะมีลิสรายการให้เลือก ยกตัวอย่างเป็น พ.ศ. ครับ
ตัวอย่าง ถ้าต้องการดึงข้อมูล พ.ศ. 2555 ก็ให้นำค่าจาก ชีท 55 ตั้งแต่ คอลัม c6:n15 มาแสดง ถ้าต้องการดึงข้อมูล พ.ศ. 2556 ก็ให้นำค่าจาก ชีท 56 ตั้งแต่ คอลัม c6:n15 มาแสดง เป็นต้นครับ
ผมลองใส่สูตร vlookup ไป แต่มันเลือกในลิสมาแสดงไม่ได้นะครับ ถ้าได้ก็ต้องแก้ในเซลล์ เป็นเซลล์ๆไป มันเลือกในลิสไม่ได้ครับ รบกวนอาจารย์ด้วยครับ
สามารถใช้ Indirect เข้ามาช่วยได้ครับ โดย

ในชีท รายงาน เซลล์ C6 คีย์สูตร

=VLOOKUP($B6,INDIRECT("'"&RIGHT(C$5,2)&"'!$B$6:$N$15"),COLUMNS($C6:C6)+1,0)

Enter > Copy ไปทางขวาและลงด้านล่าง จากนั้นลองเปลี่ยนค่าปีในเซลล์ C3 ดูครับ :P
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#37

Post by YOYIYOYI »

ขอบคุณอาจารย์มากครับ สูตรของอาจารย์สั้นดีครับ และนำไปใช้ก็ได้ตามที่ต้องการเลยครับ
แต่รบกวนอาจารย์ช่วยอธิบายความหมายของสูตรได้ไหมครับ มีความหมายว่าอย่างไรครับ
จะได้นำไปต่อยอดครับผม สูตรของอาจารย์แต่ละสูตรน่าทึ่งครับ ยอดเยี่ยมมากมาย
ขอบคุณครับ
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: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#38

Post by snasui »

:D จากสูตร =VLOOKUP($B6,INDIRECT("'"&RIGHT(C$5,2)&"'!$B$6:$N$15"),COLUMNS($C6:C6)+1,0) หมายถึงให้หาค่าที่เท่ากับ $B6 ในช่วงเซลล์ INDIRECT("'"&RIGHT(C$5,2)&"'!$B$6:$N$15") โดยนำคอลัมน์ที่เป็นผลลัพธ์ของ COLUMNS($C6:C6)+1 มาแสดง

จากสูตร INDIRECT("'"&RIGHT(C$5,2)&"'!$B$6:$N$15") เป็นการแปลงค่าช่วงเซลล์ที่ประกอบด้วยส่วนของข้อความต่าง ๆ ให้กลับมาเป็นช่วงเซลล์ โดย "'"&RIGHT(C$5,2) จะให้ผลลัพธ์เป็นชื่อชีท และ "'!$B$6:$N$15" จะให้ผลลัพธ์เป็นช่วงเซลล์

จากสูตร COLUMNS($C6:C6)+1 หมายถึงให้หาจำนวนคอลัมน์ในช่วงเซลล์ $C6:C6 แล้วบวกด้วยเลข 1 เพื่อให้เป็นคอลัมน์ที่จะใช้ดึงข้อมูลมาใช้งานจากช่วงเซลล์ที่เป็นผลลัพธ์ของ INDIRECT("'"&RIGHT(C$5,2)&"'!$B$6:$N$15")

ศึกษา Vlookup เพิ่มเติมจาก http://snasui.blogspot.com/2009/12/vlookup.html
Indirect จาก http://office.microsoft.com/th-th/excel ... P005204211
Rows จาก http://office.microsoft.com/th-th/excel ... P005204211
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#39

Post by YOYIYOYI »

ขอบคุณอาจารย์มากครับ ขอไปศึกษาสูตรที่ให้มาเพิ่มเติมก่อน
YOYIYOYI
Member
Member
Posts: 35
Joined: Thu Jul 28, 2011 1:00 pm

Re: ถ้าใช้สูตร = จากชีทหนึ่งไปยังอีกชีทหนึ่ง มีผลยังไงบ้าง

#40

Post by YOYIYOYI »

สวัสดีครับอาจารย์ หลังจากเอาสูตร INDIRECTของอาจารย์ไปศึกษาดูมันขึ้น #REF! ครับผม ลองแก้ไปหลายรอบแล้ว
ก็ยังไม่ผ่านสักทีรบกวนอาจารย์ลองดูให้ทีครับผิดตรงไหนเพราะยังไม่เข้าใจสูตรดีเท่าที่ควร
=VLOOKUP($B5,INDIRECT("'"&RIGHT(C$2,2)&"'!$B$4:$FP$94"),COLUMNS($C5:C5)+1,0)
ตัวอย่างครับ ที่ K1 ชีท AA+ ถ้าเลือก 2555 ให้แสดงข้อมูล ชีท A55 ที่ C4 แสดง ยอดยกมา นอกนั้นจะแสดงเป็นรายเดือน
ที่ คอลัม เงินออม ของแต่ละเดือน และถ้าเลือก 2556ให้แสดงข้อมูล ชีท A56 ที่ C4 แสดง ยอดยกมา
นอกนั้นจะแสดงเป็นรายเดือน ที่ คอลัม เงินออม ของแต่ละเดือน เป็นแบบนี้ไปเรื่อยๆจนถึงชีท A62 ครับ
แกะสูตรยังไม่กระจ่างจนหัวมึนไปเลยครับ
ขอบพระคุณล่วงหน้าครับ
You do not have the required permissions to view the files attached to this post.
Post Reply