Page 2 of 2

Re: รบกวนแนะนำ function ใน excel

Posted: Sun Mar 07, 2010 8:08 pm
by snasui
:D สิ่งที่คุณอธิบายมาคือสิ่งที่สูตรได้ทำตามนั้นเรียบร้อยแล้วครับ

ถ้าวันที่ 0 คือวันที่ใน C3 นั่นหมายความว่าวันที่ -1 คือก่อนวันที่ C3 1 วัน ถ้าไม่มีวันที่นั้นผลลัพธ์จะได้ 0

แต่ถ้าบอกว่าถ้าก่อนวันที่ C3 1 วันไม่มีข้อมูลก็ให้เอาข้อมูลก่อนหน้านั้นที่มี เช่นนี้จะนับเป็นก่อน C3 1 วันไม่ได้ครับ

ลองยกตัวอย่างมาให้เห็นเพื่อความชัดเจนครับ และการทำตัวอย่าง ไม่จำเป็นต้องแยกไฟล์ จะได้สะดวกในการถาม-ตอบครับ :mrgreen:

Re: รบกวนแนะนำ function ใน excel

Posted: Sun Mar 07, 2010 8:58 pm
by คุณหนูจี
ลองทำตัวอย่างมาให้ค่ะ จะเห็นว่าใน sheet 2001 วันที่มันจะไม่ได้มีทุกวันที่วันจะหายไปบางวันที่เป็นเสาร์อาทิตย์ หรือวันหยุดค่ะ อยากให้สูตรมันนับ cell ขึ้นไป 64 cell แล้วก็เอาข้อมูลมาใส่ แล้วก็นับข้อมูลข้างล่างไป 5 cell ข้างล่างค่ะ

" ถ้าก่อนวันที่ C3 1 วันไม่มีข้อมูล (ไม่มีวันที่นั้นใน sheet 2001) ก็ให้เอาข้อมูลใน cell ก่อนหน้านั้นที่มีข้อมูล" ต้องการให้เป็นแบบนั้นค่ะ ไม่รู้ว่าจะใช้สูตรไหนทำได้รึป่าวค่ะ

ผลที่ต้องการอยู่ใน sheet 2 ค่ะ :D

ขอบคุณนะคะ

Re: รบกวนแนะนำ function ใน excel

Posted: Sun Mar 07, 2010 11:54 pm
by snasui
:D ลองดูตัวอย่างตามไฟล์แนบครับ

ที่ Sheet2 เซลล์ C4 คีย์

=OFFSET('2001'!C$2,MATCH(C$3,'2001'!$A$2:$A$246,0)-1+$B4,0)

Enter > Copy ไปด้านขวาและลงด้านล่าง

Re: รบกวนแนะนำ function ใน excel

Posted: Mon Mar 08, 2010 5:58 am
by คุณหนูจี
ขอบคุณมากนะคะ จะลองเอาไปทำดูค่ะ :D

Re: รบกวนแนะนำ function ใน excel

Posted: Mon Mar 08, 2010 8:13 am
by คุณหนูจี
ลองทำดูแล้วค่ะ มันจะมีปัญหานิดนึงตรงที่ว่าในสูตรไม่เห็นมีชื่อหุ้นเป็นเงื่อนไขค่ะ เพราะตอนที่ตัดมาเป็นตัวอย่างตัดมาแค่หุ้นตัวเดียว แต่เวลาต้องทำจริงๆมีหุ้นหลายร้อยตัวเลยค่ะ เลยเขียนตัวอย่างมาเพิ่มค่ะ

Re: รบกวนแนะนำ function ใน excel

Posted: Mon Mar 08, 2010 10:30 am
by snasui
คุณหนูจี wrote:ลองทำดูแล้วค่ะ มันจะมีปัญหานิดนึงตรงที่ว่าในสูตรไม่เห็นมีชื่อหุ้นเป็นเงื่อนไขค่ะ เพราะตอนที่ตัดมาเป็นตัวอย่างตัดมาแค่หุ้นตัวเดียว แต่เวลาต้องทำจริงๆมีหุ้นหลายร้อยตัวเลยค่ะ เลยเขียนตัวอย่างมาเพิ่มค่ะ
:lol: เพื่อความครอบคลุมควรยกตัวอย่างที่เป็นตัวแทนของข้อมูลจริงครับ :mrgreen:

ผมปรับสูตรให้ใหม่ ที่ Sheet2 เซลล์ C4 คีย์สูตร

=INDEX('2001'!$C$2:$E$325,MATCH(1,IF('2001'!$A$2:$A$325=C$3,IF('2001'!$B$2:$B$325=C$1,1)),0)+$B4,MATCH(C$2,'2001'!$C$1:$E$1,0))

การกดแป้นให้รับสูตรต้องกด Ctrl+Shift+Enterเนื่องจากเป็นสูตร Array ครับ 8-)

Re: รบกวนแนะนำ function ใน excel

Posted: Mon Mar 08, 2010 7:42 pm
by คุณหนูจี
ได้แล้วค่ะ ขอบคุณมากนะคะ :)