Page 1 of 1
สูตรการดึงค่ารายการและผลรวมไปแสดง ในSheet BOQ
Posted: Thu Jul 25, 2019 4:57 pm
by Worakan
ขอปรึกษาสูตร ในไฟล์ตัวอย่าง มี Sheet ชื่อว่า A1 ถึง A19 ในแต่ละชีท จะมีรายการอุปกรณ์สำหรับใช้ในแต่ละจุด
สิ่งที่ผมต้องการคือ
1. ในชีท ชื่อ BOQ ต้องการทราบว่า ใน A1 ถึง A19 มีรายการอุปกรณ์อะไรบ้าง ถ้ามีรายการที่เหมือนกัน ให้แสดงแค่ชื่อเดียว
2. ในช่องจำนวน ต้องการให้แสดงผลรวม ของรายการที่มีชื่อเหมือนกัน
ขอขอบคุณมากครับ
Re: สูตรการดึงค่ารายการและผลรวมไปแสดง ในSheet BOQ
Posted: Fri Jul 26, 2019 7:29 pm
by snasui
ตัวอย่างสูตรตามด้านล่างครับ
- G1, H1, I1, K1, L1 คีย์ค่าตามลำดับดังนี้
0, SheetName, Transaction, Sheet, Line
- ที่ K2:K23 คีย์ชื่อชีตทั้งหมด
- ที่ L2 คีย์
=SUMPRODUCT(SUBTOTAL(2,INDIRECT("'"&K$2:K2&"'!d8:d25")))-SUMPRODUCT(SUBTOTAL(2,INDIRECT("'"&K2&"'!d8:d25")))+1
Enter > Copy ลงด้านล่าง
- ที่ M1 คีย์
=SUMPRODUCT(SUBTOTAL(2,INDIRECT("'"&K$2:K23&"'!d8:d25")))
Enter
- ที่ G2 คีย์
=IF(H2="","",IF(COUNTIF(I$2:I2,I2)=1,LOOKUP(9.99999999999999E+307,G$1:G1)+1,""))
Enter > Copy ลงด้านล่าง
- ที่ H2 คีย์
=IF(ROWS(H$2:H2)>$M$1,"",LOOKUP(ROWS(H$2:H2),$L$2:$L$23,$K$2:$K$23))
Enter > Copy ลงด้านล่าง
- ที่ I2 คีย์
=IF(H2="","",INDEX(INDIRECT("'"&H2&"'!C8:C25"),SMALL(IF(ISNUMBER(INDIRECT("'"&H2&"'!D8:D25")),ROW(INDIRECT("'"&H2&"'!D8:D25"))-ROW(INDIRECT("'"&H2&"'!D8"))+1),COUNTIF(H$2:H2,H2))))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
- ที่ A4 คีย์
=IF(ROWS(A$4:A4)>LOOKUP(9.99999999999999E+307,G:G),"",ROWS(A$4:A4))
Enter > Copy ลงด้านล่าง
- ที่ C4 คีย์
=IF(A4="","",LOOKUP(A4,G:G,I:I))
Enter > Copy ลงด้านล่าง
- ที่ D4 คีย์
=IF(C4="","",SUMPRODUCT(SUMIF(INDIRECT("'"&$K$2:$K$23&"'!C8:C25"),C4,INDIRECT("'"&$K$2:$K$23&"'!D8:D25"))))
Enter > Copy ลงด้านล่าง
- ที่ E4 คีย์
=IF(A4="","",VLOOKUP(C4,INDIRECT(INDEX("'"&$K$2:$K$23&"'!C8:E25",MATCH(TRUE,INDEX(COUNTIF(INDIRECT("'"&$K$2:$K$23&"'!C8:C25"),C4)>0,0),0))),3,0))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
Re: สูตรการดึงค่ารายการและผลรวมไปแสดง ในSheet BOQ
Posted: Tue Jul 30, 2019 5:11 pm
by Worakan
ขอขอบคุณอาจารย์มากครับ แต่ ผมขอเรียนว่า เมื่อผมทำตามขั้นตอนที่ อาจารย์แนะนำแล้ว ผลปรากฏว่า เป็นดังตัวอย่างที่ แนบมาพร้อมนี้ ประกอบกับตังผมเอง มีความรู้ทางด้านนี้น้อยมาก แต่อยากพัฒนาโปรแกรมของโครงการ จึงขอคำแนะนำจากท่าน อีกสักครั้งหนึงครับ ขอบพระคุณมากครับ
Re: สูตรการดึงค่ารายการและผลรวมไปแสดง ในSheet BOQ
Posted: Tue Jul 30, 2019 5:12 pm
by Worakan
หากผิดพลาดประการใด รบกวนขอคำแนะนำจากท่าน และขอรบกวนอาจารย์ แนะนำในตัวอย่าง จะเป็นพระคุณอย่างสูง ครับ
Re: สูตรการดึงค่ารายการและผลรวมไปแสดง ในSheet BOQ
Posted: Tue Jul 30, 2019 5:28 pm
by puriwutpokin
แก้ตรง I2=IF(H2="","",INDEX(INDIRECT("'"&H2&"'!C8:C25"),SMALL(IF(ISNUMBER(INDIRECT("'"&H2&"'!D8:D25")),ROW(INDIRECT("'"&H2&"'!D8:D25"))-ROW(INDIRECT("'"&H2&"'!D8"))+1),COUNTIF(H$2:H2,H2)))) กด Ctrl+Shift+Enter คัดลอกลงครับ
และที่ M1=SUMPRODUCT(SUBTOTAL(2,INDIRECT("'"&K$2:K23&"'!d8:d25"))) ในไฟล์ลงเป็น M2 ไม่ถูกครับต้อง M1