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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#1
Post
by March201711 » Tue Apr 10, 2018 10:51 am
สอบถามหน่อยค่ะ ใน Sheet Data column K จะมี code อยากให้ดีงข้อมูลจาก Column K ไปที่ Sheet Data adj ซึ่ง Sheet Data adj จะมีทุก Acc code ในขณะที่ Sheet Data column K จะมีแค่บาง code ค่ะ จะต้องดึงอย่างไรบ้างคะ
You do not have the required permissions to view the files attached to this post.
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#2
Post
by puriwutpokin » Tue Apr 10, 2018 11:44 am
ดึงส่วนไหน แล้วไปแสดงที่ตำแหน่งไหน ช่วย ชี้แจ้งให้ชัดเจนด้วยครับ เพื่อนๆจะได้เข้าใจได้เร็วขึ้นครับ และตัวอย่างที่มาแสดงด้วยครับ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#3
Post
by March201711 » Tue Apr 10, 2018 4:14 pm
ดึงข้อมูลจาก Sheet Data ไปแสดงที่ Sheet Data adj ค่ะ เช่น ตัวอย่างที่ acc code 51111007 ดึงข้อมูลมาจาก sheet Data มาแสดงที่ sheet Data adj จะได้ยอด 49,287,948.68 แต่ ใน Sheet Data จะไม่เรียงจากน้อยไปมาก และ จะมีแค่บาง aac code ที่ต้องการดึงไปแสดงที่ Sheet Data adj ส่วนที่ไม่มีค่าให้ดึง ให้เป้นค่าว่างค่ะ ส่วนคำตอบก็คือSheet Data adj ที่บวกมือlinkไปSheet Data เอง คือใช้ตาดูว่าตรงกับacc code ไหนค่ะ
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#4
Post
by puriwutpokin » Tue Apr 10, 2018 4:44 pm
March201711 wrote: ↑ Tue Apr 10, 2018 4:14 pm
ดึงข้อมูลจาก Sheet Data ไปแสดงที่ Sheet Data adj ค่ะ เช่น ตัวอย่างที่ acc code 51111007 ดึงข้อมูลมาจาก sheet Data มาแสดงที่ sheet Data adj จะได้ยอด 49,287,948.68 แต่ ใน Sheet Data จะไม่เรียงจากน้อยไปมาก และ จะมีแค่บาง aac code ที่ต้องการดึงไปแสดงที่ Sheet Data adj ส่วนที่ไม่มีค่าให้ดึง ให้เป้นค่าว่างค่ะ ส่วนคำตอบก็คือSheet Data adj ที่บวกมือlinkไปSheet Data เอง คือใช้ตาดูว่าตรงกับacc code ไหนค่ะ
ที่ G3=IFERROR(-INDEX(Data!$M$4:$AU$200,MATCH($C3,Data!$K$4:$K$200,0),MATCH(G$2,Data!$M$3:$AU$3,0)),0) คัดลอกไปทั่วตารางที่เกี่ยวข้องครับ
แต่ไม่เข้าใจว่า ต้องการผลลัพธ์เป็นลบ ทั้งหมดหรือไม่ เพราะดูแล้วบางตัวอย่างก็บวก มีวิธีการคิดให้ลบหรือบวกอย่างไรครับ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#5
Post
by March201711 » Tue Apr 10, 2018 7:23 pm
มีวิธีการคิดค่ะ ถ้าตั้งแต่ code ที่ขึ้นต้นด้วยเลข 4xxxxxxx ถึง 6xxxxxxx ต้องคูณ ลบ1 และ ตั้งแต่เลข 7xxxxxxx ถึง 8xxxxxxx ต้องคูณ +1 ค่ะ ติดปัญหาตรงที่ Acc code 71151001 ต้องได้ยอด 4,218,791.19 เพราะหน้า Sheet Data มี 2 บรรทัด ค่ะ แต่พอใช้สูตรแล้ว ได้ -1,506,711.14 ต้องปรับสูตรอย่างไรคะ
You do not have the required permissions to view the files attached to this post.
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#6
Post
by puriwutpokin » Tue Apr 10, 2018 7:35 pm
March201711 wrote: ↑ Tue Apr 10, 2018 7:23 pm
มีวิธีการคิดค่ะ ถ้าตั้งแต่ code ที่ขึ้นต้นด้วยเลข 4xxxxxxx ถึง 6xxxxxxx ต้องคูณ ลบ1 และ ตั้งแต่เลข 7xxxxxxx ถึง 8xxxxxxx ต้องคูณ +1 ค่ะ ติดปัญหาตรงที่ Acc code 71151001 ต้องได้ยอด 4,218,791.19 เพราะหน้า Sheet Data มี 2 บรรทัด ค่ะ แต่พอใช้สูตรแล้ว ได้ -1,506,711.14 ต้องปรับสูตรอย่างไรคะ
ปรับเป็นที่ G3=IF(LEFT($C3)+0<7,-1,1)*SUMPRODUCT((Data!$K$4:$K$200=$C3)*(Data!$M$3:$AU$3=G$2)*(Data!$M$4:$AU$200)) คัดลอกทั่วตารางครับ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#7
Post
by March201711 » Tue Apr 10, 2018 7:49 pm
ได้แล้วค่ะ ขอบคุณมากเลยค่ะ คุณ puriwutpokin รบกวนช่วยอธิบายสูตรให้หน่อยได้ไหมคะ
อยากถามอีกอย่างค่ะ เราจะรู้ได้อย่างไรคะ ว่าเจอปัญหาการดึงข้อมูลต้องมีแนวคิดอย่างไรบ้างคะว่าจะต้องใช้กับสูตรแบบไหน อย่างไรบ้างคะ บางครั้งเจอปัญหาแล้วคิดปรับสูตรไม่ค่อยได้ค่ะ
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#8
Post
by puriwutpokin » Tue Apr 10, 2018 8:07 pm
สูตรที่ ต้องการแสดงเพียงข้อมูลก็จะใช้ สูตรพวก แสดงข้อมูลเช่น Vlookup,Index+Match อื่นๆ
สูตรที่ ต้องการมีการรวมค่าด้วย ต้องใช้สูตรพวก Sum,Sumif,Sumifs,Sumproduct อื่นๆ
ลองเข้ามาดูการตอบกระทู้ในเว็บ บ่อยๆ แล้วจะเข้าใจเพิ่มขึ้นครับ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#9
Post
by March201711 » Tue Apr 10, 2018 8:25 pm
ขอบคุณค่ะ คุณ puriwutpokin มากค่ะ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#10
Post
by March201711 » Thu Apr 12, 2018 6:35 pm
มีปัญหาเพิ่มค่ะ ทำไมขึ้นข้อความ #DIV/0! ต้องแก้อย่างไรคะ
รู้ว่ามียอดที่ไม่มีค่าที่อยู่ใน sheet Data_file Column M102 ถึง AU102 ค่ะ แต่อยากให้โชว์ค่าที่เป็น - ค่ะ
You do not have the required permissions to view the files attached to this post.
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#11
Post
by puriwutpokin » Thu Apr 12, 2018 7:16 pm
เนื่องจาก ที่ F150 เป็นค่าว่าง แล้วทำให้ หาค่าไม่ได้ ถ้าไม่ต้องการให้ ขึ้น #DIV/0! ตัวอย่างใช้ IFERROR ดัก เช่น F150=IFERROR(F150/$E$149,0) ที่เซลอื่นก็ดักด้วยตัวนี้เช่นกันครับ
March201711
Gold
Posts: 1016 Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365
#12
Post
by March201711 » Thu Apr 12, 2018 8:05 pm
ค่ะ จะลองปรับดูค่ะ ถ้าขึ้น N/A ล่ะคะ
puriwutpokin
Guru
Posts: 3693 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#13
Post
by puriwutpokin » Thu Apr 12, 2018 8:13 pm
ต้องดูว่าค่าที่ขึ้นเกิดจากอะไร n/a คือหาค่าไม่ได้ ก็สามารถ ดัดด้วย iferrorได้ครับ