Page 1 of 2
ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกินไป
Posted: Tue Jun 26, 2012 10:46 am
by manocht
ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้าง ระบบแจ้งว่า "ยาวเกินไป"
รบกวนขอคำแนะนำท่านอาจารย์ด้วยครับ
ขอบพระคุณมากครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 12:24 pm
by bank9597

ลองบอกสิ่งที่ต้องการทำมาได้ไหมครับ ว่าต้องการทำอะไร และมีตัวอย่างคำตอบมาให้ด้วยครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 1:21 pm
by manocht
bank9597 wrote:
ลองบอกสิ่งที่ต้องการทำมาได้ไหมครับ ว่าต้องการทำอะไร และมีตัวอย่างคำตอบมาให้ด้วยครับ
ขออภัยด้วยครับ สำหรับข้อความไม่ชัดเจน
สูตรที่เซลล์ A30 กระผมต้องการสร้างสูตรเพิ่ม แต่โปรแกรม
ฟ้องว่า สูตรยาวเกินไป ครับ
แก้ไขได้มั้ยครับ กระผมมีเงื่อนไขต้องคำนวณเพิ่มครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 1:48 pm
by nattasiray
วิธีการแก้ไขคือ ตั้งชื่อกลุ่มเซลล์ (Range Name) แล้วนำสูตรที่ไม่สามารถกรอกลงเซลล์ได้ มาใส่ในช่อง Refer to: ครับ โดยแบ่งออกเป็นสูตรย่อย ๆ ซึ่งจะทำให้ Range Name ที่ได้เป็น Formula Name สุดท้ายก็สร้าง Range Name ใหม่ที่ทำหน้าที่รวบรวม Range Name แต่ละตัวที่เก็บสูตรย่อยมาเป็นสูตรใหญ้
ลองค้นหาด้วยคำว่า Range Name ผ่านพระอาจารย์แว่นตา (Google) ครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 6:39 pm
by snasui
manocht wrote:bank9597 wrote:
ลองบอกสิ่งที่ต้องการทำมาได้ไหมครับ ว่าต้องการทำอะไร และมีตัวอย่างคำตอบมาให้ด้วยครับ
ขออภัยด้วยครับ สำหรับข้อความไม่ชัดเจน
สูตรที่เซลล์ A30 กระผมต้องการสร้างสูตรเพิ่ม แต่โปรแกรม
ฟ้องว่า สูตรยาวเกินไป ครับ
แก้ไขได้มั้ยครับ กระผมมีเงื่อนไขต้องคำนวณเพิ่มครับ
เงื่อนไขคืออะไรบ้างลองแจกแจงมาทั้งหมด เผื่อมีวิธีการใช้สูตรที่กระชับกว่าเดิมครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 9:29 pm
by manocht
snasui wrote:manocht wrote:bank9597 wrote:
ลองบอกสิ่งที่ต้องการทำมาได้ไหมครับ ว่าต้องการทำอะไร และมีตัวอย่างคำตอบมาให้ด้วยครับ
ขออภัยด้วยครับ สำหรับข้อความไม่ชัดเจน
สูตรที่เซลล์ A30 กระผมต้องการสร้างสูตรเพิ่ม แต่โปรแกรม
ฟ้องว่า สูตรยาวเกินไป ครับ
แก้ไขได้มั้ยครับ กระผมมีเงื่อนไขต้องคำนวณเพิ่มครับ
เงื่อนไขคืออะไรบ้างลองแจกแจงมาทั้งหมด เผื่อมีวิธีการใช้สูตรที่กระชับกว่าเดิมครับ
ขอบพระคุณอาจารย์มากครับ
ด้วยความเคารพ
มงคล
A29
30 เม.ย. 10วันที่สิ้นเดือน แบบมีเงื่อนไขว่าหากตรงกับวันหยุด ให้เป็นวันทำการนับถัดไป(ส อา นักขัตฤกษ์)
เงื่อนไขกำหนดให้ เลือกวันที่ (จากในหน้า "กรอกข้อมูล" ) โดยเลือกเรียงลำดับจากวันที่ถึงก่อน(ค่าน้อยกว่า)
มาลงก่อนใน sheet1 A ตามลำดับ จากชื่อระหว่าง Colume ดังนี้ 1 วันทำรายการ 2 วันที่เปลี่ยนดอกเบี้ย 3 วันที่สิ้นเดือน(นับถัดจากวันหยุด)
โดยข้อมูลวันที่ที่ดึงมาต้องมากกว่า A29 แต่ไม่เกินวันสิ้นเดือนของเดือนถัดไป หากไม่มีรายการ #วันที่ทำรายการ #และวันที่เปลี่ยนดอกเบี้ย
ให้สร้างใน ส่วนวันสิ้นเดือนนับถัดวันหยุด (ให้สร้างทุกๆเดือน)
อธิบายเพิ่มเติมในเอกสารแนบน่ะครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 9:56 pm
by snasui

ค่อย ๆ ถามตอบกันไปนะครับ อ่านแล้วไม่เคลียร์ครับ
ลองเขียนอธิบายแยกเป็นข้อ ๆ ให้ดูได้ไหมครับ ยกตัวอย่างเช่น
เซลล์ A29 มีเงื่อนไขว่า
1.
2.
3.
4.
ฯลฯ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 11:08 pm
by manocht
snasui wrote:
ค่อย ๆ ถามตอบกันไปนะครับ อ่านแล้วไม่เคลียร์ครับ
ลองเขียนอธิบายแยกเป็นข้อ ๆ ให้ดูได้ไหมครับ ยกตัวอย่างเช่น
เซลล์ A29 มีเงื่อนไขว่า
1.
2.
3.
4.
ฯลฯ
ขอบคุณอาจารย์อีกครั้งครับ ที่สละเวลาช่วยให้คำแนะนำ
ขออนุญาตค่อยๆถามอาจารย์ไปน่ะครับ
ต้องการสร้างวันที่ถัดไปและดึงข้อมูลวันที่ โดยกำหนดเริ่มต้นงานจาก วันที่ 30/4/2010 (Friday สิ้นเดือนเมษายน 2553) : A28
มีเงื่อนไขดังนี้ครับ จาก A28=30/4/2010 แล้ว
1. เซลล์ถัดไป A29 ให้สร้างวันที่สิ้นเดือนของเดือนถัดไปจากเดือน เมย 53 คือ สิ้นเดือน พ.ค.2553 แบบมีเงื่อนไขว่าหากตรงกับวันหยุด(ส อา นักขัตฤกษ์) ให้สร้างเป็นวันทำการนับถัดไป (จ-ศ)
(ตัวอย่างครับ หากเริ่มต้นที่สิ้นเดือนของเดือน 7 คือ วันจันทร์ 2/8/2010 (31/7/53=เสาร์ 1/8/53=อา) สิ้นเดือนถัดไปคือเดือน 8 วันที่ อ.31/8/2010)
_______________
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 11:14 pm
by snasui
manocht wrote:แบบมีเงื่อนไขว่าหากตรงกับวันหยุด(ส อา นักขัตฤกษ์) ให้สร้างเป็นวันทำการนับถัดไป (จ-ศ)
จากเงื่อนไขนี้ ให้สร้างวันหยุดและวันหยุดนักขัตฤกษ์เอาไว้ในพื้นที่ใด ๆ แล้วค่อยอ้างอิงมาใช้ในสูตร ลองสร้างมาดูก่อนและส่งไฟล์มาดูกันครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 11:23 pm
by manocht
snasui wrote:manocht wrote:แบบมีเงื่อนไขว่าหากตรงกับวันหยุด(ส อา นักขัตฤกษ์) ให้สร้างเป็นวันทำการนับถัดไป (จ-ศ)
จากเงื่อนไขนี้ ให้สร้างวันหยุดและวันหยุดนักขัตฤกษ์เอาไว้ในพื้นที่ใด ๆ แล้วค่อยอ้างอิงมาใช้ครับ

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

กระชับขึ้นแล้วครับ
หากสร้างวันหยุดเเล้ว เราควรใช้สูตรอ้างอิง ตัวใดครับจึงจะเหมาะสมครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Tue Jun 26, 2012 11:25 pm
by snasui

ลองสร้างมาดูก่อน เขียนสูตรมาดูก่อนแล้วแนบไฟล์มาด้วยครับ
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Wed Jun 27, 2012 1:09 am
by manocht
snasui wrote:
ลองสร้างมาดูก่อน เขียนสูตรมาดูก่อนแล้วแนบไฟล์มาด้วยครับ
แนะนำด้วยครับ อาจารย์
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Wed Jun 27, 2012 6:12 pm
by snasui

ลองดูตัวอย่างการหาวันที่สิ้นเดือนและหากตรงกับวันหยุดหรือนักขัตฤกษ์ก็ให้เลื่อนไปวันทำการถัดไปตามไฟล์แนบ โดยมีวิธีการดังนี้ครับ
- ที่คอลัมน์ H เริ่มจาก H27 ให้ทำการ List วันที่ไว้หลาย ๆ ปี
- ที่ I27 เขียนสูตรเพื่อหาว่าเป็นวันหยุดหรือไม่
=OR(WEEKDAY(H27,2)>5,COUNT(MATCH(H27,$K$27:$K$54,0)))
Enter > Copy ลงด้านล่าง
- ที่ A29 คีย์สูตรเพื่อหาวันสิ้นเดือนถัดไปและหากตรงกับวันหยุดให้เลื่อนเป็นวันทำการถัดไป
=INDEX($H$27:$H$19848,MATCH(1,IF(DATE(YEAR(A28),MONTH(A28)+2,0)<=$H$27:$H$19848,IF($I$27:$I$19848=FALSE,1)),0))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Wed Jun 27, 2012 7:00 pm
by manocht
ขอบพระคุณมากครับอาจารย์
ขออนุญาตเพิ่มเติมอีกประเด็นครับอาจารย์
EndOfMonthAndShiftToWorkDay.JPG
จาก A31 : A32 วันที่ใน A32 วันสิ้นเดือนยังขาดการสร้างเดือน 8
A31 เป็นสิ้นเดือน 7 แบบนับถัดวันหยุด 2/8/53
A32 เป็นสิ้นเดือน 9 (30/9/53)
สูตรยังไม่สร้างสิ้นเดือน 8 ครับ
ขอความกรุณาอาจารย์ช่วยแนะนำให้อีกหน่อยน่ะครับ
ด้วยความเคารพครับ
มงคล
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Wed Jun 27, 2012 7:20 pm
by snasui

ที่ A29 ปรับสูตรเป็นด้านล่างครับ
=INDEX($H$27:$H$19848,MATCH(1,IF(DATE(YEAR(A28),MONTH(A28)+2-(MONTH(A28)-MONTH(A27)>1),0)<=$H$27:$H$19848,IF($I$27:$I$19848=FALSE,1)),0))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Thu Jun 28, 2012 11:35 am
by manocht
snasui wrote:
ที่ A29 ปรับสูตรเป็นด้านล่างครับ
=INDEX($H$27:$H$19848,MATCH(1,IF(DATE(YEAR(A28),MONTH(A28)+2-(MONTH(A28)-MONTH(A27)>1),0)<=$H$27:$H$19848,IF($I$27:$I$19848=FALSE,1)),0))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
สูตรใช้ได้เรียบร้อยครับอาจารย์ เป็นสูตรที่กระชับดีมากๆครับ
ขอความกรุณาอาจารย์แนะนำต่อในเงื่อนไขที่ 2 ด้วยน่ะครับ
เงื่อนที่ 2 ต้องการคำนวณต่อจากเงื่อนไงที่ 1 ครับ
ที่ A29 เป็นการสร้างวันที่สิ้นเดือนแบบนับถัดวันหยุด
ที่ A30 ต้องการดึงข้อมูลวันที่และข้อมูล Range เดียวกันมาก่อน จาก sheet!2 col A และ Col D
***ถ้าหากข้อมูลวันที่ดังกล่าว มีค่าอยู่ในช่วง มากกว่า A29 แต่น้อยกว่า วันที่สิ้นเดือนของเดือนถัดไปจาก A29
ดึงมาโดยเรียงลำดับครับ ถ้าไม่มีก็ให้สร้างวันสิ้นเดือน ขออนุญาตยกตัวอย่างดังนี้
วันที่ เงินงวด ดอกเบีย้ บิล
A29 31 พ.ค.53 - - 1000 วันที่สิ้นเดือนเดือน 6 แบบนับถัดวันหยุด + 1000 ในช่องบิล
________________________________________________________
A30 1 มิ.ย. 53 6000 - - ดึงข้อมูลจาก sheet!2 ช่อง A(วันที่) ตามด้วย B(เงินงวด)
A 31 15 มิ.ย.53 8% - ดึงข้อมูลจาก sheet!2 ช่อง D(วันที่) ตามด้วย E(ดอกเบี้ย)
_________________________________________________________________
A32 2 ส.ค.53 - - 1000 วันที่สิ้นเดือนเดือน7 แบบนับถัดวันหยุด + 1000 ในช่องบิล
รบกวนอาจารย์ช่วยพิจารณาให้ด้วยน่ะครับ
ด้วยความเคารพ
มงคล
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Thu Jun 28, 2012 12:03 pm
by bank9597

พยายามทำความเข้าใจโจทย์แล้ว แต่ก็ยังไม่ได้อยู่ดี หากเข้าใจโจทย์ก็จะสามารถคิดสูตรได้

Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Thu Jun 28, 2012 7:51 pm
by snasui

ช่วยยกตัวอย่าง
โดยเขียนคำตอบที่ต้องการลงในไฟล์ แล้วส่งไฟล์นั้นมาดูกัน จะได้เข้าใจได้ง่ายขึ้น
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Thu Jun 28, 2012 9:43 pm
by manocht
snasui wrote:
ช่วยยกตัวอย่าง
โดยเขียนคำตอบที่ต้องการลงในไฟล์ แล้วส่งไฟล์นั้นมาดูกัน จะได้เข้าใจได้ง่ายขึ้น
เงื่อนที่ 2 ต้องการคำนวณต่อจากเงื่อนไงที่ 1 ครับ
ที่ A29 เป็นการสร้างวันที่สิ้นเดือนแบบนับถัดวันหยุด
ที่ A30 ต้องการดึงข้อมูลวันที่และข้อมูล Range เดียวกันมาก่อน จาก sheet!2 col A และ Col D
***ถ้าหากข้อมูลวันที่ดังกล่าว มีค่าอยู่ในช่วง มากกว่า A29 แต่น้อยกว่า วันที่สิ้นเดือนของเดือนถัดไปจาก A29
ดึงมาโดยเรียงลำดับครับ ถ้าไม่มีก็ให้สร้างวันสิ้นเดือน ขออนุญาตยกตัวอย่างดังนี้ ที่
ชีส sheet1 ช่อง A30 A31 A32
วันที่ เงินงวด ดอกเบีย้ บิล
A29 31 พ.ค.53 - - 1000 วันที่สิ้นเดือนเดือน 6 แบบนับถัดวันหยุด + 1000 ในช่องบิล
________________________________________________________
A30 1 มิ.ย. 53 6000 - - ดึงข้อมูลจาก sheet!2 ช่อง A(วันที่) ตามด้วย B(เงินงวด)
A 31 15 มิ.ย.53 8% - ดึงข้อมูลจาก sheet!2 ช่อง D(วันที่) ตามด้วย E(ดอกเบี้ย)
_________________________________________________________________
A32 2 ส.ค.53 - - 1000 วันที่สิ้นเดือนเดือน7 แบบนับถัดวันหยุด + 1000 ในช่องบิล

ขอบพระคุณอาจารย์ครับ
ด้วยความเคารพ
มงคล
Re: ต้องทำอย่างไรครับ หากสร้างสูตรใน CELL ที่เราสร้างยาวเกิ
Posted: Thu Jun 28, 2012 11:19 pm
by snasui

อ่านแล้วไม่เข้าใจครับ ขอให้อธิบายในเรื่องของการเรียงวันที่ให้จบก่อนครับ ดูกันเป็นเรื่อง ๆ ไป ยอดเงิน หรือดอกเบี้ย หรือ Bill อย่าเพิ่งนำมาอธิบาย
ดูเหมือนพยายามจะนำวันทำรายการที่ดึงมาจาก Sheet2 กับที่ดึงมาเองโดยดูวันสิ้นเดือนที่เลื่อนออกไปเป็นวันทำรายการถัดไปหากวันสิ้นเดือนเป็นวันหยุดมาเปรียบเทียบกัน นอกจากนี้ยังนำวันที่คิดเปลี่ยนดอกเบี้ยมาแทรกด้วย ไม่ทราบว่าวันที่เหล่านี้มีความสัมพันธ์กันอย่างไร พิจารณาวันไหนก่อนหลังอย่างไร ดูเงื่อนไขอะไรครับ
จากที่ยกตัวอย่างมาได้นำวันที่ 15 มิ.ย. 54 ไปแทรกในช่วงปี 53 คิดว่าไม่น่าจะถูกต้อง
ผมลองคิดสูตรเพื่อหาค่าที่น้อยกว่าระหว่างวันที่จาก 3 แหล่งเผื่อว่าจะเป็นคำตอบ โดยที่ Sheet1 เซลล์ A29 คีย์
=MIN(IF(Sheet2!$A$28:$A$40>A28,Sheet2!$A$28:$A$40),IF(Sheet2!$D$28:$D$35>A28,Sheet2!$D$28:$D$35),INDEX($H$27:$H$19848,MATCH(1,IF(DATE(YEAR(A28),MONTH(A28)+2-(MONTH(A28)-MONTH(A27)>1),0)<=$H$27:$H$19848,IF($I$27:$I$19848=FALSE,1)),0)))
Ctrl+Shift+Enter > Copy ลงด้านล่าง