Excel:如何基于另一列最高求和值提取对应列的值
如何找出累计工时最高的月份
核心思路是先按月份分组计算总工时,再定位总工时最大值对应的月份,下面是常用工具的具体操作:
Excel 操作步骤
- 计算各月工时总和
- 提取月份:如果日期列是A列,在空白列(比如C列)的第一个数据行输入
=MONTH(A2),下拉填充所有行,得到每条记录对应的月份数字。 - 求和或用数据透视表:
- 用函数:在另一空白列(比如D列)输入
=SUMIF(C:C, [月份数字], B:B)(把[月份数字]换成1、2...12,逐个计算各月总和)。 - 更高效的方式:选中整个数据区域,点击「插入」→「数据透视表」,将「月份」拖入行区域,「工时」拖入值区域,值字段设置为「求和」,直接得到各月总工时汇总表。
- 用函数:在另一空白列(比如D列)输入
- 提取月份:如果日期列是A列,在空白列(比如C列)的第一个数据行输入
- 定位最高工时的月份
假设透视表的月份列是E列,总工时列是F列,输入公式=INDEX(E:E,MATCH(MAX(F:F),F:F,0)),即可直接返回累计工时最高的月份。
Python(Pandas)操作步骤
import pandas as pd # 读取数据(替换为你的文件路径) df = pd.read_csv("work_hours_data.csv") # 转换日期格式并提取月份 df['日期'] = pd.to_datetime(df['日期']) df['月份'] = df['日期'].dt.month # 分组计算各月总工时 monthly_total = df.groupby('月份')['工时'].sum().reset_index() # 找到总工时最高的月份 max_hour_month = monthly_total.loc[monthly_total['工时'].idxmax(), '月份'] print(f"累计工时最高的月份是 {max_hour_month} 月")
内容的提问来源于stack exchange,提问作者ARainyCloud
相关产品推荐
相关产品推荐

