Page 1 of 1

แก้ไขสูตร

Posted: Wed Feb 03, 2016 2:01 pm
by yinsiang
เรียนอาจารย์ ทุกท่าน

พอดีผมทำสูตรให้ตัวสินค้า match กัน
**สูตรแรกให้ คอลัมน์ G3 ดึงสูตรจาก sheet 1 เพื่อให้เหมือนกันกับ คอลัมน์ B3
และให้ คอลัมน์ H3 ดึงสูตร จาก sheet 1 เพื่อให้เหมือนกันกับ คอลัมน์ D3
แล้วสูตรอ่านบางตัว รบกวนอาจารย์ช่วยชีแนะด้วยครับ

Re: แก้ไขสูตร

Posted: Wed Feb 03, 2016 3:31 pm
by DhitiBank
ลองแบบนี้ครับ
ที่ชีท Product transfer total kns เซลล์ H3 คีย์

Code: Select all

=IFERROR(INDEX(Sheet1!$F$2:$F$99057,SMALL(IF($B3=Sheet1!$E$2:$E$5,ROW(Sheet1!$E$2:$E$5)-ROW(Sheet1!$E$2)+1),COUNTIF(B$3:B3,B3))),"N/A")
กด Ctrl+Shift ค้างไว้ แล้ว Enter -> คัดลอกลงล่างครับ
(สังเกตว่า หากกดรับสูตรถูกต้อง จะเห็นเครื่องหมายปีกกา { } ขึ้นมาคร่อมสูตรโดยอัตโนมัติครับ ถ้าไม่เห็นก็ต้องกดใหม่)

Re: แก้ไขสูตร

Posted: Wed Feb 03, 2016 4:32 pm
by yinsiang
เรียน อาจารย์
ขอบคุณครับ
สอบถามอาจารย์ ตรงคอลัมน์ G3 สามารถเอาสูตรด้านบนได้ไหมครับ

Re: แก้ไขสูตร

Posted: Wed Feb 03, 2016 4:39 pm
by yinsiang
เรียน อาจารย์

สอบถามอีกครั้งครับ ตรงคอลัมน์ H6 สูตร มันขึ้น N/A แต่ใน file มันมีข้อมูลอยู่ครับรบกวนอาจารย์อีกครั้งครับ

Re: แก้ไขสูตร

Posted: Wed Feb 03, 2016 6:03 pm
by XDoll
yinsiang wrote:
สอบถามอีกครั้งครับ ตรงคอลัมน์ H6 สูตร มันขึ้น N/A แต่ใน file มันมีข้อมูลอยู่ครับรบกวนอาจารย์อีกครั้งครับ
เนื่องจากเป็นสูตร array คำตอบอยู่นี่ครับ
DhitiBank wrote: กด Ctrl+Shift ค้างไว้ แล้ว Enter -> คัดลอกลงล่างครับ
(สังเกตว่า หากกดรับสูตรถูกต้อง จะเห็นเครื่องหมายปีกกา { } ขึ้นมาคร่อมสูตรโดยอัตโนมัติครับ ถ้าไม่เห็นก็ต้องกดใหม่)

Re: แก้ไขสูตร

Posted: Thu Feb 04, 2016 8:28 am
by yinsiang
เรียน อาจารย์
ขอบคุณครับ
สอบถามอาจารย์อีกครั้งครับ ตรงคอลัมน์ G3 สามารถเอาสูตรด้านบนได้ไหมครับ หรือต้องเปลี่่ยนค่าตรงไหนบ้างครับ


IFERROR(INDEX(Sheet1!$F$2:$F$99057,SMALL(IF($B3=Sheet1!$E$2:$E$5,ROW(Sheet1!$E$2:$E$5)-ROW(Sheet1!$E$2)+1),COUNTIF(B$3:B3,B3))),"N/A")

Re: แก้ไขสูตร

Posted: Thu Feb 04, 2016 9:03 am
by DhitiBank
yinsiang wrote:ตรงคอลัมน์ G3 สามารถเอาสูตรด้านบนได้ไหมครับ หรือต้องเปลี่่ยนค่าตรงไหนบ้างครับ

IFERROR(INDEX(Sheet1!$F$2:$F$99057,SMALL(IF($B3=Sheet1!$E$2:$E$5,ROW(Sheet1!$E$2:$E$5)-ROW(Sheet1!$E$2)+1),COUNTIF(B$3:B3,B3))),"N/A")
ก่อนอื่น หากไม่รบกวนเกินไปขอสอบถามหน่อยได้ไหมครับ ในเมื่อมีข้อมูลในคอลัมน์ B-D อยู่แล้ว ทำไมต้องเขียนสูตรยากๆ ดึงข้อมูลที่เหมือนกันมาแสดงในคอลัมน์ G-I อีก คือผมแค่อยากรู้ว่าสิ่งที่คุณ yinsiang อยากจะทำคืออะไร เช่น ได้ข้อมูลดิบในคอลัมน์ B-E มา แล้วอยากจะเอามาเทียบกับใน Sheet1 ว่ามีหรือเปล่า อะไรทำนองนี้หรือเปล่าครับ ที่ถามก็เพราะว่าอาจไม่จำเป็นต้องใช้สูตรยากๆ แบบนี้ก็ได้ครับ :)

ผมไม่ใช่อาจารย์ครับ เป็นเพื่อนเรียนเหมือนกัน เห็นคำถามไหนพอตอบได้ก็ลองทำดูครับ คิดว่าเป็นการบ้าน

Re: แก้ไขสูตร

Posted: Thu Feb 04, 2016 9:19 am
by yinsiang
คือผมต้องการเทียบดีว่าสินค้าที่อยุ่ใน G-K คือดึงข้อมูลจาก sheet1 มาเพื่อที่จะเปรียบเทียบกันระหว่าง B-E ว่าสินค้าตัวไหนที่หายไปโดยยึดจาก B-Eเป็นตัวตั้งนะครับ

Re: แก้ไขสูตร

Posted: Thu Feb 04, 2016 9:25 am
by DhitiBank
หากเป็นแบบนั้น ลองแบบนี้ครับ
ที่ชีท Product transfer total kns เซลล์ G3 คีย์

=LOOKUP(2,1/((Sheet1!$E$2:$E$5=$B3)*(Sheet1!$F$2:$F$5=$D3)),Sheet1!$E$2:$E$5)

Enter --> คัดลอกลงล่าง

ส่วนสูตรในคอลัมน์ H และ I ก็ใช้สูตรเดียวกันนี้ได้ แต่ต้องปรับช่วงที่ระบายสีแดงเอาไว้ ให้สอดคล้องกับหัวตารางใน Sheet1 ครับ หากรายการไหนไม่เจอ สูตรนี้ก็จะคืนค่า #N/A เหมือนกันครับ ที่แนะนำสูตรนี้แทนเพราะหากต้องใส่สูตรจำนวนมากและยิ่งหากข้อมูลใน Sheet1 มีมากๆ การใช้สูตรอาร์เรย์เหมือนที่เคยใช้จะทำให้คำนวณช้ามากได้ครับ

Re: แก้ไขสูตร

Posted: Thu Feb 04, 2016 10:00 am
by yinsiang
ขอบคุณครับ