วิธีจัดกลุ่มข้อมูลตามเดือนใน Google ชีต


37

ฉันมี Google ชีตซึ่งมีการวัดต่างๆในแต่ละวัน ในแต่ละวันมีแถวของตัวเอง:

day        | cost | impressions | clicks | conversions
2014-02-01 | $45  | 3,540       | 80     | 5
2014-02-02 | $49  | 3,700       | 88     | 7
2014-02-03 | $42  | 3,440       | 79     | 7
2014-02-04 | $51  | 3,940       | 91     | 10

ฉันต้องการที่จะหมุนตารางและสรุปcost, impressions, clicksและconversionคอลัมน์เดือน (ไม่ได้โดยวัน) เช่นนี้

Month        | Sum of cost | Sum of impressions | Sum of clicks | Sum of conversions
February     | $187        | 14620              | 338           | 29

ใน Excel ฉันเพิ่งใช้Group byฟังก์ชั่น แต่ฉันเห็นว่าไม่มีใน Google ชีต


2
คำตอบที่ถูกต้อง ณ ปี 2018 เป็นคำตอบเดียวนี้: webapps.stackexchange.com/a/120852
Kos

คำตอบ:


18

ใช้Data->Pivot table report...ข้อเสนอตรงตามที่คุณขอ อาจเป็นไปได้ว่าคุณต้องใช้ " Google แผ่นงานใหม่ "
ฉันใช้สิ่งนั้นเป็นค่าเริ่มต้นและง่ายต่อการบรรลุสิ่งที่คุณต้องการเช่นเดียวกับใน Excel

ที่นี่ในคำตอบของฉันฉันอธิบายวิธีการเปิดใช้งานสเปรดชีตใหม่


ดูเหมือนว่าฉันไม่เข้าใจปัญหาอย่างสมบูรณ์

ก่อนอื่นเราต้องมีเดือน =MONTH(DATE_COLUMN)สำหรับการที่เพิ่มคอลัมน์ใหม่ที่จะดึงวันที่ใช้

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นสร้างรายงาน Pivot:

ป้อนคำอธิบายรูปภาพที่นี่


ลองใช้ 'แผ่นงาน Google ใหม่' และไม่มีตัวเลือกในการจัดกลุ่มวันที่เดือนในรายงานตารางสาระสำคัญบางทีคุณอาจจะหลั่งน้ำตาบ้างไหม?
Bogdan

ขออภัยฉันคิดว่าปัญหาหลักคือคุณไม่สามารถจัดกลุ่มได้เลย ถ้าอย่างนั้นทำไมไม่เพิ่มคอลัมน์ที่ให้เฉพาะเดือนและจัดกลุ่มด้วยล่ะ
StampedeXV

แต่น่าเสียดายที่ฉันไม่สามารถเพิ่มในคอลัมน์อื่นหรือเปลี่ยนรูปแบบของแผ่นแหล่งที่มาที่มันถูกนำมาใช้เพื่อให้พลังงานแดชบอร์ดใน Cyfe แต่ต้องขอบคุณสำหรับคำตอบของคุณ ...
Bogdan

คุณสามารถเพิ่มคอลัมน์จากนั้นซ่อนมันเพื่อให้มองไม่เห็น คุณยังสามารถใช้งานได้ในรายงาน Pivot
StampedeXV

ความคิดที่ยอดเยี่ยม ฉันลองแล้ว แต่ไซเฟอร์ดูเหมือนจะไม่สามารถมองข้ามคอลัมน์ที่ซ่อนอยู่ได้ ฉันแค่จะต้องรักษา 2 แผ่นที่ซ้ำกันกับแหล่งข้อมูลการทำงานรอบนี้ ....
Bogdan

30

ขณะนี้ Google ชีทสนับสนุนสิ่งนี้เป็น 'สร้างกลุ่มวันที่เดือย'

เมื่อคุณเพิ่มคอลัมน์วันที่ / เวลาเป็นแถว:

  1. คลิกขวาที่หนึ่งในค่าในตาราง Pivot
  2. เลือก 'สร้างกลุ่มวัน pivot'
  3. เลือกการจัดกลุ่มที่ต้องการ (เช่น 'เดือน' หรือ 'ปีเดือน')

ก่อน + ตัวอย่างภาพ:

ตาราง Pivot ก่อนที่จะจัดกลุ่ม

หลังจาก:

ป้อนคำอธิบายรูปภาพที่นี่

ข้อมูลเพิ่มเติม


นี่น่าจะเป็นคำตอบที่ถูกต้อง
senseiwu

นี่เป็นคำตอบที่ดีที่สุดในปี 2018
Calvin

ฉันสามารถใช้สูตรของตัวเองกับตาราง Pivot ได้หรือไม่? ฉันต้องการรับจำนวน
Hubert Grzeskowiak

3
ฉันไม่เห็นตัวเลือกนี้ในคอลัมน์วันที่ของฉัน
Ian Hyzy

5

ไม่มีคอลัมน์ตัวช่วย:

=query(A:E,"select sum(B), sum(C), sum(D), sum (E) group by month(A) offset 1")  

สมมติว่าdayอยู่ใน A1

เอกสารที่ทำงานได้ดีขึ้นมากในการอธิบายวิธีการทำงานดังกล่าวข้างต้นกว่าที่ฉันเคยทำได้


1
ฟังดูมีประโยชน์จริงๆ คุณอธิบายได้ไหมว่ามันทำงานอย่างไร ฉันไม่เคยใช้ฟังก์ชัน Query
Shawn V. Wilson

เป็นไปได้ไหมที่จะจัดกลุ่มตามเดือนและปี?
Hubert Grzeskowiak

@HubertGrzeskowiak ใช่มันคือ
Lee Taylor

4

ดังนั้นสำหรับผู้ที่ถามคำถามที่คล้ายกันกับฉันดูเหมือนจะไม่มีฟังก์ชั่นฟิลด์กลุ่มสำหรับ Pivot ใน Google ชีต (เนื่องจากมีอยู่ใน Excel) ดังนั้นวิธีที่ง่ายที่สุดคือการเพิ่มคอลัมน์อื่นเปลี่ยนวันที่ของคุณเป็นกลุ่มที่คุณต้องการเช่นสัปดาห์เดือนเดือนปี ... หวังว่าการทำงานใน Google ชีทก็จะเร็ว ๆ นี้


2

วิธีที่ง่ายกว่าที่ฉันพบคือการแปลงเซลล์วันที่เป็นข้อความในคอลัมน์ใหม่

=Text(A1, "mmm-yy")

จากนั้นคุณสามารถ pivot และมันจะจัดกลุ่มตามเดือน


1

ไม่มีคำตอบก่อนหน้านี้ที่ใช้ได้สำหรับฉันเพราะฉันใช้แบบฟอร์มเป็นอินพุต คุณไม่สามารถเพิ่มสูตรในแผ่นงาน

นี่คือการทำงานของฉัน

จากการอ่านข้างต้นตาราง Pivot ต้องการคอลัมน์ที่มีเดือนให้เลือก คุณสามารถใช้เกณฑ์อื่นเช่นสัปดาห์หรือวันศุกร์ หรือ John, Doe, Foo หรือ bar สิ่งที่คุณต้องการที่จะ 'กลุ่ม' ใน

ในกรณีของฉัน: วันที่เป็น B =month(B2)ให้เดือน =month(B2)ดังนั้นผมจำเป็นต้องมีคอลัมน์พิเศษกับ

แผ่นแบบฟอร์มไม่อนุญาตให้ใช้สูตร และบนแผ่นงานที่มีแบบฟอร์มคุณไม่สามารถเพิ่มคอลัมน์ที่มีสูตรได้ (แน่นอน: คุณทำได้ แต่รายการแบบฟอร์มใหม่จะลบสูตรในบรรทัดที่เกี่ยวข้อง)

แผ่นที่สอง

แผ่นงานที่สองอย่างง่ายพร้อม=page1!A1ฯลฯ และการเพิ่มเดือนคอลัมน์มีปัญหาเดียวกัน รายการใหม่ใน form => เพิ่มแถว

วิธีการแก้

ดังนั้นฉันทำต่อไปนี้

  • เพิ่มแผ่นงานพิเศษ
  • ใช้=importrange("longkeynumber";"sheet form!A1:E1000")กับ A1
  • (importrange คือการนำเข้าเอกสารอื่น แต่เฮ้…มันใช้งานได้)
  • ใน F ใช้แล้ว =if(B3>0;(MONTH(B3));"")
  • เมื่อเพิ่มข้อมูลเพิ่มเติมในแผ่น A สูตรในแผ่น B ที่มีการนำเข้าอยู่
  • ตอนนี้คุณสามารถเพิ่มตารางเดือยโดยที่ (ในกรณีนี้) F เป็นแถวหรือคอลัมน์

ในคำตอบของผู้ใช้ 165410 เขากล่าวว่า: - ใน F ใช้แล้ว=if(B3>0;(MONTH(B3));"")นี่เป็นคำตอบที่ดี แต่สามารถทำได้ง่ายยิ่งขึ้น: - ใน F3 =arrayformula(if(b3:b>0;(month(b3:b));""))สิ่งนี้ทำอะไรใส่เดือนโดยอัตโนมัติสำหรับเซลล์ที่ไม่ว่างในช่วง B3: บี การแทรกหรือลบแถวหรือการย้ายแถวจะไม่ทำให้สูตรผิดพลาด!
Stefan van Aalst

เมื่อเพิ่มคำตอบใหม่ลงในสเปรดชีตแถวใหม่จะถูกแทรก สูตรอาร์เรย์ (ผลลัพธ์หลายค่า) สามารถใช้แทนหรือสูตรสเกลาร์ (ผลลัพธ์ค่าเดียว) ในทางกลับกันเมื่อแหล่งข้อมูลมาจากไฟล์เดียวกันคุณสามารถใช้สูตรอาร์เรย์เพื่อส่งคืนผลลัพธ์เช่นเดียวกับ IMPORTRANGE และพวกเขาอัปเดตทันที
Rubén

ฉันชอบวิธีนี้! ใน F3, = arrayformula (ถ้า (b3: b> 0; (เดือน (b3: b)); "")) ปัญหาเท่านั้นคือเมื่อข้อมูลเป็นเวลามากกว่าหนึ่งปีและแต่ละเดือนจะรวมกันกับเดือนเดียวกันใน ปีก่อน.
Vic M

1

หากคุณเพิ่มคอลัมน์ใหม่อยู่แล้วคุณสามารถใช้งานeomonth("reference cell",0)ได้เช่นกัน ที่จะคว้าวันสุดท้ายของเดือนเสมอ หรือeomonth("reference cell",-1)+1รับต้นเดือน

ความสวยงามด้วยวิธีนี้แทนที่จะแปลงเป็นข้อความคือเมื่อคุณหมุนข้อมูล มันจะเรียงลำดับจากน้อยไปหามากโดยอัตโนมัติ


1

ฉันพบวิธีที่ฉันชอบดีกว่า ฉันเพียงสร้างคอลัมน์ที่ซ่อนอยู่ด้วยขั้นตอนต่อไปนี้:


  • รอบทุกวันของเดือนจนถึงวันแรกของเดือน

= A2 - วัน (A2) + 1 โดยที่ A2 คือวันที่มาตรฐาน

  • ตั้งค่าการจัดรูปแบบเป็นกำหนดเองและเลือกเดือน / ปี คุณจะต้องลบการตั้งค่าวัน ดังนั้นมันจะแสดงเดือน / ปีเมื่อค่าจริงจะเป็นวันแรกของเดือน, เดือน, ปี
  • ตอนนี้ตารางเดือยจะจัดกลุ่มรายการที่คล้ายกันทั้งหมดพร้อมกันและแสดงการจัดรูปแบบจากคอลัมน์ด้วยเดือน / ปี

วิธีนี้คุณจะได้รับค่าที่ไม่ซ้ำกันเมื่อเวลาผ่านไป ฉันตัดสินใจซ่อนคอลัมน์ที่เป็นปัญหาเนื่องจากฉันมีเอกสารเชื่อมต่อกับเอกสารนี้ซึ่งดึงสองแถวแรกเมื่อฉันเพิ่มพวกเขา

สูตรสำหรับวันที่และการจัดรูปแบบ

รูปแบบวันที่กำหนดเอง

ผลตาราง Pivot

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.