:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

เกี่ยวกับ Weeknum ครับ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

เกี่ยวกับ Weeknum ครับ

#1

Post by poipoi »

เรียนอาจารย์และผู้รู้ทุกท่านครับ..

จากไฟล์ที่แนบไป คือผมต้องการให้ row1 รัน week ไปเรื่อยๆครับ จากไฟล์แนบจะเห็นว่า จะเริ่มรันตั้งแต่ของปีที่แล้วจนสิ้นสุดที่ week 52 แล้วเริ่ม week 1 ใหม่ของปี 2013

โดยที่รายงานตัวนี้จะต้องทำทุกๆสัปดาห์ครับ สมมติ ณ วันนี้ วันที่ 2/4/2013 ฉะนั้น; ผมจึงต้องทำรายงานของวันที่ 25 - 31 / 3 / 2013 ซึ่งเท่ากับ week 13 ครับ (เริ่มนับวันจันทร์เป็นวันต้น)

ซึ่งสิ่งที่ผมอยากให้อาจารย์ช่วยแนะนำคือ...ควรจะใส่สูตร weeknum อย่างไรให้มันทำการรัน week เองครับ

ปล. หากอาจารย์หรือผู้รู้ท่านใดไม่เข้าใจถามมาได้เลยนะครับ

ขอบคุณทุกท่านที่ให้คำแนะนำครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31146
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#2

Post by snasui »

:D F1 ค่าคือ 46 มาจากไหน จะทราบได้อย่างไรว่าเริ่มที่ 46 หรือว่าเลขอื่น ๆ

ปกติการ Run Week จะต้องทราบวันที่ถึงจะ Run ได้ แต่หากไม่ได้คำนึงว่าเป็นวันที่เท่าไร เพียงแค่ให้ Run 1-52 วนไปเรื่อย ๆ ก็ทำได้เช่นกัน แต่ต้องทราบเงื่อนไขชัดเจน
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#3

Post by poipoi »

ที่ F1 ค่า 46 คือ week 46 ของ ปีที่แล้วครับ

ตามที่อาจารย์เข้าใจครับ วันลูป 1 - 52 ไปเรื่อยๆครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31146
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#4

Post by snasui »

:D ลองตามนี้ครับ

ที่ G1 คีย์

=MOD(($F1+COLUMNS($G1:G1))-1,52)+1

Enter > Copy ไปด้านขวา
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#5

Post by poipoi »

จากสูตรข้างต้นสามารถใช้งานได้ครับ

แต่ผมมีอีก 1 คำถามครับ ว่า..หากเราต้องการที่จะให้ F1 รันค่าเองเลยโดยที่ไม่ต้องมานั่งเปลี่ยน F1 ทุกครั้งจะเป็นไปได้หรือไม่ครับ ? หรือว่าจะต้องใช้ VBA เข้ามาช่วย

ปล. ผมต้องการให้มันเป็น automate มากที่สุดครับเพื่อที่จะได้ลดระยะเวลาการทำงานให้มากที่สุด

ขอบคุณสำหรับคำแนะนำครับอาจารย์
User avatar
snasui
Site Admin
Site Admin
Posts: 31146
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#6

Post by snasui »

:shock: อันนั้นควรจะเป็นคำตอบมากว่าคำถามครับ :ard:
snasui wrote:หากไม่ได้คำนึงว่าเป็นวันที่เท่าไร เพียงแค่ให้ Run 1-52 วนไปเรื่อย ๆ ก็ทำได้เช่นกัน แต่ต้องทราบเงื่อนไขชัดเจน
การทำเช่นนั้นเงื่อนไขคืออะไรครับ จะทราบได้อย่างไรว่า F1 คืออะไร และเป็นค่านั้นได้เมื่อใด :?:
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#7

Post by poipoi »

ขอโทษครับที่ตีความไม่แตก

F1 ก็คือค่าของสัปดาห์ที่ต้องตัดทิ้งในทุกๆครั้งที่ทำครับแล้วไปแอดคอลัมน์ใหม่ที่ Y1 แล้วใส่สัปดาห์ที่กำลังทำหรือสัปดาห์ที่ถัดจาก X1 ครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31146
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#8

Post by snasui »

:D อ่านแล้วยังไม่เข้าใจครับ ไฟล์ที่แนบมา X1 และ Y1 เป็นการ Run ตัวเลขมาจากด้านหน้า

ช่วยอธิบายลำดับการทำงานว่าต้องกรอกข้อมูลใด ในเซลล์ใด ก่อนที่จะให้หมายเลข Weeknum

และ Weeknum ใน F1 เริ่มจากตัวเลขใด ดูจากเงื่อนไขใดจึงจะทราบว่าเริ่มจากเลขนั้นครับ
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#9

Post by poipoi »

โดยในการทำงานของรายงานตัวนี้นั้น

จะมีข้อมูลของแต่ละสัปดาห์อยู่ตั้งแต่ rows2 to end ครับ

โดยที่สิ่งที่ต้องการคือจะนับเฉพาะ 19+1 คือ สัปดาห์ก่อนหน้า 19 สัปดาห์ และสัปดาห์ที่กำลังทำอยู่อีก 1 เป็น 20 สัปดาห์ครับ

โดยเวลาที่ทำนั้นจะต้องคอยมานั่งแก้ week format หรือ เลขสัปดาห์ใน row1 เองครับ

ดังนั้นผมจึงอยากหาวิธีมาลดขั้นตอนตรงนี้ครับ โดยที่พอเวลาเราเปิดฟอแมตขึ้นมาจะนับสัปดาห์ให้อัตโนมัติครับ

เพระารายงานตัวนี้จะต้องทำทุกอาทิตย์มีค่าคงที่เสมอจึงคิดว่ามันน่าจะสามารถที่จะกำหนดสัปดาห์ให้มันได้ ทีนี้ก็จะเหลือแค่ขั้นตอนการนำข้อมูลมาลงเท่านั้นครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31146
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#10

Post by snasui »

:D ช่วยแนบตัวอย่างที่แสดงให้เห็นว่า F1 เริ่มจากตัวเลขใดมาด้วยครับ
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#11

Post by poipoi »

ไม่รู้จะทำยังไงให้อาจารย์เห้นภาพ งั้นลองตามนี้ดูครับ

ที่ F1 (ตามไฟล์ที่แนบ) คือ สัปดาห์ที่ 46 ของปีที่แล้ว(2012), ที่ Y1 คือ สัปดาห์ที่ 13 ของปีนี้ (2013) ครับ

ถ้าหากผมจะต้องรายงานตัวนี้ในสัปดาห์หน้าก็จะได้เป็น

ที่ F1 คือ สัปดาห์ที่ 47 (2012), ที่ Y1 คือ สัปดาห์ที่ 14 (2013) ครับ

หวังว่าอาจารย์จะเข้าใจนะครับ หากไม่เข้าใจบอกเลยนะครับผมจะพยายามหาทางใหม่ให้อาจารย์เข้าใจครับ

ขอบคุณครับ
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: เกี่ยวกับ Weeknum ครับ

#12

Post by tupthai »

ตามความเข้าใจนะครับ :D
Y1=WEEKNUM(TODAY()-7,2)
X1=IF(Y1=1,52,Y1-1) enter>copy ไปทางซ้ายถึง F1
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#13

Post by poipoi »

จากสูตรข้างต้นของคุณ Tupthai ทำงานได้ดีครับ

แล้วก็ได้ทำความเข้าใจกับสูจรแล้ว ขอบคุณมากเลยครับ

ไปๆ มาๆ ไม่มีอะไรซับซ้อนเลยแค่ผมคิดไม่ถึง
poipoi
Member
Member
Posts: 164
Joined: Fri May 18, 2012 11:23 am
Contact:

Re: เกี่ยวกับ Weeknum ครับ

#14

Post by poipoi »

เรียนคุณ Tupthai ครับ

มีปัญหาอยู่อย่างนหนึ่งคือเมื่อเวลาผ่านไปหลายสัปดาห์หรือหลายเดือนแล้วเรากลับมาเปิดรายงานตัวนี้ใหม่ถ้าผมเข้าใจไม่ผิดตัวเลขมันจะเคลื่อนไปเลื่อนตามสูตร Today()-7 ใช่ไหมครับ

พอจะมีทางที่ทำให้มันไม่เคลื่อนไปไม่ว่าจะผ่านไปนานเท่าไหร่ครับ

รบกวนด้วยครับ
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: เกี่ยวกับ Weeknum ครับ

#15

Post by tupthai »

ทำให้มันไม่เคลื่อนไปไม่ว่าจะผ่านไปนานเท่าไหร่
ทำไม่ได้ครับ เพราะ ผูกเงื่อนไขกับ Today()
Post Reply