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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#1
Post
by borsalino » Mon May 12, 2014 3:31 pm
อยากทราบวิธีดึงค่าจากหลายชีทมารวมกันอ่ะครับ มาแสดงค่าในไฟล์ สรุป.xlsx
* วันที่ใน Coulumn A ไม่ต้องดึงครับ
* โดย Column B เปนผลรวมการขายของสินค้าทุกสินค้าต่อวัน และดึงค่าจากไฟล์ สินค้า.xlsx ในแต่ละวันมาบวกรวมกันครับ
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 » Mon May 12, 2014 4:50 pm
ลองตามนี้ครับ
เปิดไฟล์ทั้งสองขึ้นมาพร้อมกัน และต้องเปิดพร้อมกันเสมอสูตรจึงจะทำงานถูกต้อง
ที่ไฟล์ สรุป.xlsx ชีท สรุป
เซลล์ J2:J3 คีย์ [สินค้า.xlsx]ปูน , [สินค้า.xlsx]ฟองน้ำ ตามลำดับ
คลุม J2:J3 > เข้าเมนู Formulas > Name Manager > New > ตรง Name: คีย์ AllSh > OK
เซลล์ B3 คีย์สูตร
=SUMPRODUCT(SUMIF(INDIRECT("'"&Allsh&"'!a3:a100"),$A3,INDIRECT("'"&Allsh&"'!d3:d100")))
Enter > Copy ลงด้านล่าง
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#3
Post
by borsalino » Mon May 12, 2014 5:04 pm
ได้แล้วครับ ขอบคุณมากๆครับ
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#4
Post
by borsalino » Mon May 12, 2014 6:30 pm
snasui wrote: ลองตามนี้ครับ
เปิดไฟล์ทั้งสองขึ้นมาพร้อมกัน และต้องเปิดพร้อมกันเสมอสูตรจึงจะทำงานถูกต้อง
ที่ไฟล์ สรุป.xlsx ชีท สรุป
เซลล์ J2:J3 คีย์ [สินค้า.xlsx]ปูน , [สินค้า.xlsx]ฟองน้ำ ตามลำดับ
คลุม J2:J3 > เข้าเมนู Formulas > Name Manager > New > ตรง Name: คีย์ AllSh > OK
เซลล์ B3 คีย์สูตร
=SUMPRODUCT(SUMIF(INDIRECT("'"&Allsh&"'!a3:a100"),$A3,INDIRECT("'"&Allsh&"'!d3:d100")))
Enter > Copy ลงด้านล่าง
ขอถามอีกหน่อยครับ ในการกำหนดคีย์ มีวิธีกำหนดในไฟล์อื่น นอกจากไฟล์ สรุป.xlsx ได้มั้ยครับ
แต่ไฟล์ที่ต้องการแสดงผลลัพธ์ยังเป็นไฟล์ สรุป.xlsx เหมือนเดิม (ข้อมูลเยอะน่ะครับเอามาใส่ใน สรุป.xlsx ไม่ไหว)
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#5
Post
by snasui » Mon May 12, 2014 7:14 pm
กำหนดคีย์ที่กล่าวถึงคือคีย์อะไรครับ ที่ผมแจ้งไปไม่มีการกำหนดคีย์
หากหมายถึง การให้ Range Name ที่ชื่อ AllSh ไม่ควรทำในไฟล์อื่น ควรทำในไฟล์ที่ใช้สรุปข้อมูลเท่านั้นครับ
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#6
Post
by borsalino » Mon May 12, 2014 7:57 pm
ผมหมายถึง AllSh นี่แหละครับ ยังไงก้อขอบคุนที่แนะนำนะครับ
วังวู ช่ง
Silver
Posts: 805 Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:
#7
Post
by วังวู ช่ง » Mon May 12, 2014 9:09 pm
snasui wrote: ลองตามนี้ครับ
เปิดไฟล์ทั้งสองขึ้นมาพร้อมกัน และต้องเปิดพร้อมกันเสมอสูตรจึงจะทำงานถูกต้อง
ที่ไฟล์ สรุป.xlsx ชีท สรุป
เซลล์ J2:J3 คีย์ [สินค้า.xlsx]ปูน , [สินค้า.xlsx]ฟองน้ำ ตามลำดับ
คลุม J2:J3 > เข้าเมนู Formulas > Name Manager > New > ตรง Name: คีย์ AllSh > OK
เซลล์ B3 คีย์สูตร
=SUMPRODUCT(SUMIF(INDIRECT("'"&Allsh&"'!a3:a100"),$A3,INDIRECT("'"&Allsh&"'!d3:d100")))
Enter > Copy ลงด้านล่าง
เรียนท่าน อาจารครับ ถ้าเราไม่เปีดไฟล์พร้อมกันผนรับมักจะออกแบบนี้
#VALUE! ใน office 2003 เรา update ได้แต่ 2007 ไม่รู้จะแก้ไขครับ เมื่อคำตอบออกมา
#VALUE! ครับ หรือ จำเป็นที่จะต้องเปีดไฟล์ทั้งหมดครับ
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#8
Post
by borsalino » Mon May 12, 2014 9:20 pm
ถ้าผมเพิ่ม Column ใน สินค้า.xlsx แล้วอยากจะให้แสดงผลลัพธ์ในไฟล์ สรุป.xlsx โดยมีเงื่อนไขไม่เอาบางอัน จะทำยังไงครับ
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:
#9
Post
by snasui » Mon May 12, 2014 9:39 pm
สามารถปรับสูตรเดิมเป็นตามด้านล่างครับ
=SUMPRODUCT(SUMIFS(INDIRECT("'"&AllSh&"'!e3:e100"),INDIRECT("'"&AllSh&"'!b3:b100"),"โกดัง 1",INDIRECT("'"&AllSh&"'!a3:a100"),$A3))
ส่วนที่เกิด Error ผมเขียนไว้ชัดเจนแล้วในข้อ 1 และต้องเป็นไปตามนั้น มีพันไฟล์ก็ต้องเปิดทั้งพันไฟล์ครับ
วังวู ช่ง
Silver
Posts: 805 Joined: Thu May 31, 2012 2:27 pm
Location: Laos
Excel Ver: MS Excel for office 365 MSO
Contact:
#10
Post
by วังวู ช่ง » Mon May 12, 2014 9:43 pm
snasui wrote: สามารถปรับสูตรเดิมเป็นตามด้านล่างครับ
=SUMPRODUCT(SUMIFS(INDIRECT("'"&AllSh&"'!e3:e100"),INDIRECT("'"&AllSh&"'!b3:b100"),"โกดัง 1",INDIRECT("'"&AllSh&"'!a3:a100"),$A3))
ส่วนที่เกิด Error ผมเขียนไว้ชัดเจนแล้วในข้อ 1 และต้องเป็นไปตามนั้น มีพันไฟล์ก็ต้องเปิดทั้งพันไฟล์ครับ
ขอบคุณมากครับ เข้าใจดีครับ
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#12
Post
by borsalino » Mon May 12, 2014 10:18 pm
ท่านอาจารย์ครับ ถ้า Column B ผมมีหลายค่าล่ะครับ เช่น โกดัง 1,โกดัง 2,สาขา 1,สาขา2,.......
จะให้ไม่โชว์ โกดัง 2,สาขา 2 นอกนั้นโชว์ ทำยังไงครับ
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#13
Post
by snasui » Mon May 12, 2014 10:35 pm
หลักการคือรวมมาทั้งหมดก่อนแล้วหักด้วยค่าที่ไม่ต้องการครับ
ลองเขียนมาเองก่อน ติดตรงไหนแล้วแนบไฟล์ที่ได้ลองทำเองแล้วมาถามกันต่อ จะได้ช่วยดูต่อไปจากนั้นครับ
borsalino
Member
Posts: 43 Joined: Mon May 12, 2014 12:17 pm
#14
Post
by borsalino » Mon May 12, 2014 10:46 pm
หลักการเยี่ยมไปเลยครับ แต่สูตรผมยาวไปเลยเหมือนกัน ขอบคุนครับอาจารย์
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#15
Post
by snasui » Mon May 12, 2014 10:53 pm
ฟอรั่มถามตอบห้ามเขียนภาษาแชทนะครับ ผมพบว่าคุณเขียนคำว่า "ขอบคุณ" เป็น "
ขอบคุน " มาอย่างน้อย 2 ครั้ง กรุณาอ่านกฎการใช้บอร์ดทุกข้อด้านบน
อย่าตั้งใจผิดบ่อย ๆ ครับ