Page 1 of 1

สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่ค่ะ

Posted: Wed Sep 24, 2014 2:14 pm
by suka
เรียนอาจารย์และท่านผู้รู้ค่ะ

สูตรดึงข้อมูลจากหลายชีทมาต่อกันในชีทเดียวให้เรียงข้อมูลตามวันที่ ตัวอย่างไฟล์แนบที่ชีทรวมรายงานคอลัมน์ A ให้เรียงวันที่ก่อนวันที่หลังเรียงต่อลงมาค่ะ

คำตอบที่ต้องการตามตัวอย่างไฟล์แนบที่ระบายสีเหลืองชีทรวมรายงานค่ะ ขอบคุณค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Wed Sep 24, 2014 6:08 pm
by snasui
:D การดึงข้อมูลมาต่อกันจากหลายแหล่งหากต้องการดึงมาต่อกันพร้อมเรียงด้วยต้องใช้ VBA ลองเขียนมาเองก่อน ติดตรงไหนแล้วค่อยถามกัน

แต่หากว่าต้องการจะเรียงใหม่ในรูปแบบที่ต้องการในพื้นที่อื่นแยกต่างหากจะสามารถทำได้ด้วยสูตร โดยเรียงวันที่ด้วยฟังก์ชั่น Small จากนั้นค่อยดึงข้อมูลตามวันที่มาใช้งาน

เช่นจากตัวอย่างไฟล์ที่แนบมา
  1. เซลล์ L2 คีย์
    =SMALL($A$2:$A$65,ROWS(L$2:L2))
    Enter > Copy ลงด้านล่าง
  2. เซลล์ M2 คีย์
    =INDEX(B$2:B$65,SMALL(IF($A$2:$A$65=$L2,ROW($A$2:$A$65)-ROW($A$2)+1),COUNTIF($L$2:$L2,$L2)))
    Ctrl+Shift+Enter > Copy ไปด้านขวาและลงด้านล่าง

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Wed Sep 24, 2014 6:49 pm
by suka
ขอบคุณค่ะอาจารย์ ใช้สูตรค่ะได้ตรงตามต้องการค่ะ

อาจารย์คะหากคอลัมน์ A:J เป็นค่าว่าง ที่เซลล์ L2 และ เซลล์ M2 ให้เป็นค่าว่างไม่เป็น #NUM! ต้องปรับสูตรอย่างไรคะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Wed Sep 24, 2014 10:10 pm
by snasui
:D ลองใช้ Iferror เข้ามาช่วยครับ

ลองเขียนมาเองดูก่อน ผมเห็นว่าเป็นฟังก์ชั่นที่เคยใช้มาบ้างแล้ว ควรทำความเข้าใจและใช้ให้เป็นครับ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Thu Sep 25, 2014 11:08 am
by suka
ขอบคุณค่ะอาจารย์ ได้แล้วค่ะปรับสูตรตามด้านล่างนี้ค่ะ
1.เซลล์ L2 คีย์
=IFERROR(SMALL($A$2:$A$65,ROWS(L$2:L2)),"")
Enter > Copy ลงด้านล่าง
2.เซลล์ M2 คีย์
=IFERROR(INDEX(B$2:B$65,SMALL(IF($A$2:$A$65=$L2,ROW($A$2:$A$65)-ROW($A$2)+1),COUNTIF($L$2:$L2,$L2))),"")
Ctrl+Shift+Enter > Copy ไปด้านขวาและลงด้านล่าง

ขอรบกวนช่วยสูตรรวมตัวเลขชีทรวมรายงานที่เซลล์ Z1 ต้องการให้รวมตามเลขที่เอกสารคอลัมน์ O ดึงมาหนึ่งค่าหากคอลัมน์ T มีมากกว่าหนึ่งค่าให้นำมารวมแค่หนึ่งค่ะ คำตอบที่ต้องการอยู่ชีทรวมรายงานเซลล์ Z1 ค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Thu Sep 25, 2014 8:51 pm
by suka
อาจารย์คะ ต้องการให้สูตรที่เซลล์ Z1 ชีทรวมรายงาน รวมตัวเลขที่คอลัมน์ T เงื่อนไขคือคอลัมน์ O เลขที่เอกสารหนึ่งหมายเลขดึงหนึ่งค่าค่ะ
ลองทำภาพประกอบมาให้อาจารย์ดูแทนคำอธิบายน่าจะเข้าใจได้ดีกว่าค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Thu Sep 25, 2014 8:59 pm
by snasui
:D เซลล์ Z1 สามารถใช้ฟังก์ชั่น Sumif ตามด้านล่างได้ครับ

=SUMIF($P$2:$P$100,1,$T$2:$T$100)

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Fri Sep 26, 2014 9:30 am
by suka
:thup: ขอบคุณค่ะอาจารย์ ได้ตรงตามต้องการค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 1:25 pm
by suka
อาจารย์คะที่คอลัมน์ O มีการ Filter ข้อมูลมาหนึ่งหมายเลขสูตรที่เซลล์ Z1 ต้องการให้สูตรดึงค่าที่คอลัมน์ T ตามภาพค่ะ
สูตรเซลล์ Z1 ควรปรับอย่างไรคะ ขอบคุณค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 1:38 pm
by snasui
:D ดูตัวอย่างสูตรได้ที่นี่ครับ :arrow: First record form filter

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 3:34 pm
by suka
อาจารย์คะ ลองแล้วไม่สามารถดึงค่าได้ตามที่ต้องการค่ะ

ตัวอย่างสูตรที่เซลล์ Z1 หากอ้างถึงคอลัมน์ O ค่าที่ได้เป็น 257009001

=INDEX($O$2:$O$200,MATCH(1,SUBTOTAL(3,OFFSET($O$2,ROW($O$2:$O$200)-ROW($O$2),)),0))

หากอ้างถึงคอลัมน์ P ค่าที่ได้เป็น 1

=INDEX($P$2:$P$100,MATCH(1,SUBTOTAL(3,OFFSET($O$2,ROW($P$2:$P$100)-ROW($O$2),)),0))

หากอ้างถึงคอลัมน์ T ค่าที่ได้เป็น 0.00

=INDEX($T$2:$T$200,MATCH(1,SUBTOTAL(3,OFFSET($T$2,ROW($T$2:$T$200)-ROW($T$2),)),0))

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 3:38 pm
by snasui
:D คำตอบที่ต้องการคือคอลัมน์ใด ให้เขียนสูตรเพื่อนำข้อมูลในคอลัมน์นั้นมาแสดงให้ได้ก่อน หากว่าไม่ได้คำตอบที่ต้องการ การดึงข้อมูลจากคอลัมน์อื่นก็ย่อมไม่ได้คำตอบที่ต้องการเช่นเดียวกัน จึงไม่จำเป็นต้องไปทดสอบกับคอลัมน์อื่นแต่อย่างใดครับ

แนบไฟล์ที่ลองทำแล้วมาด้วยจะได้เห็นว่าเขียนสูตรได้ตรงกับที่ควรจะเป็นหรือไม่ จะได้ตอบต่อไปจากนั้นครับ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 3:59 pm
by suka
อาจารย์คะ ลองใส่สูตรที่เซลล์ AA1:AA3 ชีทรวมรายงานตัวอย่างไฟล์แนบค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 4:06 pm
by snasui
:shock: ในไฟล์แนบยังไม่ได้ทำการ Filter สูตรนั้นจะได้ผลลัพธ์โดยนำข้อมูลที่ได้จากการ Filter มาแสดงครับ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Sat Sep 27, 2014 4:50 pm
by suka
ได้ทำการ Filter เรียบร้อยทำได้แล้วค่ะอาจารย์ ขอบคุณมากเลยค่ะ

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Mon Sep 29, 2014 6:08 pm
by suka
อาจารย์คะ สูตรที่ชืทรวมรายงานเซลล์ AC ใส่สูตรด้านล่างนี้ Filter แล้วสูตรจะดึง 1 บรรทัด
หาก Filter ตามรูปแนบและต้องให้บวกกัน คำตอบที่ต้องการตามเซลล์ AA1 ค่ะ สูตรต้องปรับอย่างไรคะ

=INDEX($T$2:$T$100,MATCH(1,SUBTOTAL(3,OFFSET($T$2,ROW($T$2:$T$100)-ROW($T$2),)),0))

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Mon Sep 29, 2014 6:26 pm
by snasui
:D ตัวอย่างสูตรที่ AA1 ครับ

Code: Select all

=SUM(IF(ISNUMBER($T$2:$T$100),SUBTOTAL(9,OFFSET($T$2,ROW($T$2:$T$100)-ROW($T$2),0))*(P2:P100=INDEX(P2:P100,MATCH(1,SUBTOTAL(3,OFFSET($T$2,ROW($T$2:$T$100)-ROW($T$2),0)),0)))))
Ctrl+Shift+Enter

Re: สูตรรวมข้อมูลหลายชีทมาไว้ชีทเดียวให้เรียงต่อกันตามวันที่

Posted: Mon Sep 29, 2014 6:42 pm
by suka
:thup: ขอบคุณอาจารย์มากเลยค่ะ ได้ตรงตามที่การแล้วค่ะ :D