snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบ Power Query, PivotTable, Power Pivot, Data Model, Chart, Dashboard
teay-bcc
Member
Posts: 12 Joined: Tue Jan 15, 2013 3:29 pm
#1
Post
by teay-bcc » Wed Dec 15, 2021 10:42 pm
เรียน สอบถาม อาจารย์ ในการสร้างคอลัมน์ Running total พร้อม Reset Value ด้วย Power Query
รายละเอียด คือ ต้องการสร้างคอลัมน์ Running total พร้อม Reset Value
เมื่อค่าที่รวมไม่เกิน 50,000 แล้วจึงเริ่มรวมค่าใหม่ในคอลัมน์เดิม
ขอบคุณครับ
Attachments
Running Sum.xlsx
(9.16 KiB) Downloaded 5 times
snasui
Site Admin
Posts: 31199 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Thu Dec 16, 2021 4:16 pm
ยังไม่พบว่ามีการนำข้อมูลเข้า Power Query ลองนำข้อมูลเข้าไปก่อนแล้วแนบไฟล์นั้นมาอีกรอบครับ
teay-bcc
Member
Posts: 12 Joined: Tue Jan 15, 2013 3:29 pm
#3
Post
by teay-bcc » Fri Dec 17, 2021 7:44 am
ผมนำข้อมูลเข้า Power Query พร้อมแนบไฟล์แล้วครับ
ขออภัยที่แนบไฟล์ไม่ถูกต้อง ขอบคุณครับ
Attachments
Running Sum (1).xlsx
(18.23 KiB) Downloaded 4 times
snasui
Site Admin
Posts: 31199 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Fri Dec 17, 2021 2:32 pm
ช่วยเพิ่มคำตอบที่ถูกต้องมาให้ด้วยครับว่าต้องการคำตอบเป็นแบบไหน จะได้เข้าใจตรงกันครับ
teay-bcc
Member
Posts: 12 Joined: Tue Jan 15, 2013 3:29 pm
#5
Post
by teay-bcc » Sun Dec 19, 2021 3:57 pm
ผมเพิ่มคำตอบที่ Sheet : Output ในคอลัมน์ B
โจทย์ คือ ต้องการรวมข้อมูลในคอลมัน์ A ทีละแถวลงมา
หากรวมขอมูลล่าสุดแล้วเกิน 50,000 ให้เริ่มต้นนับใหม่
คำตอบในคอลัมน์ B ผมทำ Manual ไว้ให้ครับ
ขอบคุณครับ
Attachments
Running Sum (Output).xlsx
(21.97 KiB) Downloaded 11 times
snasui
Site Admin
Posts: 31199 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#6
Post
by snasui » Tue Dec 21, 2021 7:18 am
การใช้ Power Query จัดการงานนี้ ดูแล้วมีหลายขั้นตอน เช่นต้องสร้าง Logic ให้แสดง Group ของแต่ละชุดที่รวมกันไม่เกิน 50000 ออกมาเพื่อใช้ในการหายอดสะสม ผมยังไม่มีเวลาคิดและค้นหาวิธีการดังกล่าวใน Power Query
ระหว่างนี้ใช้สูตร Excel เป็นการเฉพาะหน้าไปก่อนครับ
เซลล์ B2 คีย์สูตร
=IF(N(C1)+A2>50000,A2,N(C1)+A2)
Enter > Copy ลงด้านล่าง
ส่วนการ Running Total ศึกษาจากที่นี่เป็นเบื้องต้นครับ
https://www.youtube.com/results?search_ ... ower+query
teay-bcc
Member
Posts: 12 Joined: Tue Jan 15, 2013 3:29 pm
#7
Post
by teay-bcc » Tue Dec 21, 2021 1:12 pm
ขอบคุณสำหรับแนวทางครับ อาจารย์
Bo_ry
Gold
Posts: 1245 Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:
#8
Post
by Bo_ry » Sat Dec 25, 2021 12:36 am
Code: Select all
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
Rtotal = List.Generate(()=>[i = 1, s = Source[Value]{0}], each [i] <= Table.RowCount(Source),
each [i = [i]+1, s = if [s] + Source[Value]{[i]} >50000 then Source[Value]{[i]} else [s] + Source[Value]{[i]} ],
each [s] )
in
Rtotal
Attachments
Running Sum (Output).xlsx
(21.39 KiB) Downloaded 5 times