前言:
在项目管理中,一般就是用些项目管理工具来管理这个任务和 task,但是就是要学这些工具很麻烦,比较好的方法,通用的方法就是用 Excel 表格去做(这非常适合松散的团队组织),然后那么就问题来了,要学习一些 WPS表格的基本技巧,这个文章系列呢,就是大概要介绍这个WPS表格的一个和项目管理相关的一些技巧的处理。
在本例的实际技巧里面,我用了一个简单的表格计划(月或者周计划)和一个每天任务记录对应的项目进度记录表格,来记录每天实际的项目时间分配情况。
本节:
先大致介绍一下,WPS表格中,项目管理中要用到的一些基本命令:
1 WPS 中常用的项目管理用的一些命令:
1.1 数据输入与编辑
- 快速填充:将鼠标移至单元格右下角,待光标变为十字形状,按住鼠标左键拖动填充柄,可快速填充序列。例如输入日期、数字等。
- 数据验证:通过“数据”选项卡中的“有效性”功能,设置数据输入规则。比如限制输入范围、文本长度等。
- 复制与粘贴:使用快捷键Ctrl+C和Ctrl+V,或右键选择粘贴选项。
1.2 函数与公式
- 常用函数:SUM(求和)、AVERAGE(平均)、COUNT(计数)等。
- 条件函数:IF函数可根据条件判断返回不同结果。
- 日期函数:计算日期差、日期范围等。
1.3 数据排序与筛选
- 排序:选中要排序的列,点击“开始”选项卡中的“排序”按钮,选择升序或降序排列。
- 筛选:点击“数据”选项卡中的“筛选”按钮,通过下拉菜单选择筛选条件。
1.4 图表制作
- 创建图表:选中数据区域,点击“插入”选项卡,选择合适的图表类型,如柱状图、折线图等。
- 图表美化:通过“图表工具”选项卡对图表进行美化,包括更改颜色、字体、坐标轴标签等。
1.5 数据透视表
- 创建数据透视表:点击“插入”选项卡中的“数据透视表”按钮,选择数据源区域,确定数据透视表的布局。
- 数据透视表应用:通过拖曳字段到不同区域,快速分析数据。
1.6 共享与协作
- 共享工作簿:通过“审阅”选项卡中的“共享工作簿”功能,实现多人协作。
- 保护工作表:设置密码保护工作表,防止数据被篡改。
2 基本案例举例:
2.1 数据有效性:
打开有效性设置:
在项目管理的时候,把时间,日期,任务,资源,阶段等通过不同的数据类型进行填充,以减少项目管理输入的错误,方便后面进行数据归一化整理。
2.2 常用的WPS函数
数据统计与运算函数
- SUM函数:用于快速求和。如汇总项目总成本、预算或总工时等,公式为 =SUM(A1:A10) 。
- AVERAGE函数:可计算平均值,适合项目绩效分析,如计算团队成员的平均完成时间或绩效评分,公式为 =AVERAGE(A1:A10) 。
- SUMPRODUCT函数:支持加权平均等复杂计算,可用于计算加权成本、项目资源分配或工时分析等,公式为 =SUMPRODUCT(A2:A10,B2:B10) 。
条件判断与筛选函数
- IF函数:根据设定条件自动生成结果,可用于判断项目预算是否超支或进度是否按计划进行等,公式为 =IF(A1>B1,"超预算","预算内") 。
- SUMIF函数:根据设定条件求和,适合按条件进行成本或时间统计,如汇总超预算任务的成本等,公式为 =SUMIF(A1:A10,"超预算",B1:B10) 。
- COUNTIFS函数:可以根据多个条件统计条目数量,用于快速筛选和统计数据,如统计符合多个条件的任务完成情况,公式为 =COUNTIFS(A2:A10,"完成",B2:B10,">100") 。
数据查找与引用函数
- VLOOKUP函数:在大量数据中快速查找匹配值,简化数据管理,可用于查找项目资源、供应商或任务相关信息等,公式为 =VLOOKUP(A1,B1:C10,2,FALSE) 。
- INDEX函数:返回指定单元格的值,结合MATCH函数,可精确查找特定单元格的数据,公式为 =INDEX(A1:B10,2,2) 。
- MATCH函数:返回值的位置,配合INDEX函数使用,可快速定位目标数据的位置,公式为 =MATCH(A1,B1:B10,0) 。
日期与时间函数
- NETWORKDAYS函数:排除周末和假期,准确计算项目工期,公式为 =NETWORKDAYS(A1,B1) 。
- TODAY函数:自动更新日期,便于动态跟踪项目时间节点,可用于项目时间轴的动态跟踪或截止日期的提醒,公式为 =TODAY() 。
- DAYS函数:可用于计算两日期之间的天数差异,便于监控项目进度,公式为 =DAYS(B1,A1) 。
2.3 排序和筛序
实操技巧:
项目管理需求:
如下表,由于现在的项目比较多,安排的合作的伙伴也不少,这样,我们需要大致记录一下每日的项目的进度情况:
假定的项目名称,每个项目有3个阶段任务,然后,我们在右侧的表格里面,每天填一下(通过下拉表)自动选择左侧的项目任务来记录项目的工作情况。
上面的表格是实验设计表格的DEMO,现在我们看一下我实际项目中用到的表格。
写在前面的话,我们可以大致分为,左图的数据区域,和右图的数据访问区域,来进行设计表格。
我的实际的表格如下:
数据区域:
访问区域:
访问区域是我每天要填写的任务记录表,数据区域其实是我每月每周的计划表格。
1 方法一:利用INDIRECT
函数:
1.1 INDIRECT
1.1.1 文本到应用的转换:
将文本字符串转换为实际的单元格引用。例如,INDIRECT("A1")
会返回A1单元格的值。
1.1.2 创建动态引用
它允许您动态地构建引用,这在引用的行或列号需要根据某些条件变化时非常有用。例如,INDIRECT("A" & ROW())
会返回当前行的A列单元格的值。
具体解释如下:
ROW()
函数会返回当前单元格所在的行号。例如,如果该公式位于第5行的某个单元格中,ROW()
将返回5。
连接符&
将文本字符串"A"
和行号连接起来,形成一个新的字符串。在第5行的情况下,这个字符串将是"A5"
。INDIRECT("A" & ROW())
实际上引用了当前行的A列单元格。如果公式在第5行,它将引用A5单元格的值。
具体,我举了一个例子如下:我在G1,写了公式,定义了找E列的累进“行”的内容,由于,行号有一个起头不一致,我加了4的偏移量,为何加4的偏移量而不是5,是因为计数是从0开始,0到4就是5。
公式 =INDIRECT(A1&"!A:A")
在Excel或WPS表格中的作用是动态地引用由单元格A1中的值指定的工作表中的A列。
让我们分解这个公式来理解它的每个部分:
A1
:这是公式中的一个单元格引用,它假定包含一个工作表的名称。
&
:这是一个连接符,用于将两个字符串连接在一起。
"!A:A"
:这是一个范围引用,表示从A列的第一个单元格到最后一个单元格。
INDIRECT
:这是一个函数,它接受一个字符串形式的单元格引用作为参数,并返回该引用指向的实际单元格或单元格区域的值。例如:将这些组合起来,
=INDIRECT(A1&"!A:A")
的意思是:
- 首先,查看单元格A1中的值,假设A1中的值是“Sheet2”。
- 然后,将A1中的值与字符串"!A:A"连接起来,形成新的字符串"Sheet2!A:A"。
- 最后,
INDIRECT
函数将这个字符串解释为对工作表"Sheet2"的A列的引用,并返回该列的数据。这个公式通常用于创建动态引用,特别是当你需要根据某个单元格中的信息来改变数据引用的工作表或列时。这样,当你更改A1单元格中的工作表名称时,
INDIRECT
函数会自动更新引用,显示新工作表中A列的数据。
1.2 实操问题1:越界了
公式一:
=IF(I3="阶段1",INDIRECT("'1月项目计划任务表'!D16:D"&(COUNTA('1月项目计划任务表'!D:D)+15)),IF(I3="阶段2",INDIRECT("'1月项目计划任务表'!E16:E"&(COUNTA('1月项目计划任务表'!E:E)+15)),IF(I3="阶段3",INDIRECT("'1月项目计划任务表'!F16:F"&(COUNTA('1月项目计划任务表'!F:F)+15)),"")))
问题:溢出区域不是空白区域
【分析,连续给出了三个竖表的List,如果list里面有不是空的,会报错】
修改,
=IF(I3="阶段1", INDIRECT("'1月项目计划任务表'!D16"),
IF(I3="阶段2", INDIRECT("'1月项目计划任务表'!E16"),
IF(I3="阶段3", INDIRECT("'1月项目计划任务表'!F16"),
"")))
1.3 实操问题2:如何自动对应应用
项目,阶段1的对应上面的公式解决了自动找到阶段任务的问题,但是,需要手动去修改D16,E16,F16,这个太麻烦,最好是,通过拉取自动获得。
=IF(I3="阶段1", INDIRECT("'1月项目计划任务表'!D" & (ROW() + 13)),
IF(I3="阶段2", INDIRECT("'1月项目计划任务表'!E" & (ROW() + 13)),
IF(I3="阶段3", INDIRECT("'1月项目计划任务表'!F" & (ROW() + 13)),
"")))
这样是对的,但是,还有一个问题:
行的对应关系,必须是从按顺序一个一个对应的,如J4必须对应的是J3对应的ROW+1的行,这样如果中间有一个跳的数据就无法正常显示了。
也就是,获得数据那边,我需要再有一个列做参考,比如列的数据编号是,01,02,03...,每个编号,比如编号01,对应有“阶段1”,“阶段2”,“阶段3”写到I3 ,每个阶段有内容,
然后,在J4显示。
数据单元组织如下:
表头 阶段1 阶段2 阶段3
01 A1 A2 A3
02 B1 B2 B3
我要实现,显示单元如下:
单元格,H3下拉选择01,或者 02,
单元格,I3 下拉选择 阶段1 或者 阶段2 或者 阶段3的
单元格,G3 自动显示,H3,I3两个单元定义的内容,比如H3=01,I3=阶段2,得出,G3=A2
我们用下面的方法来实现:
2 方法二:利用INDEX+MATCH
函数:
大家看一下,我的设计,这里面不同的颜色,表示了对应变量的关系:
公式是这样的:很简单
=INDEX(Sheet1!$B$2:$D$100,MATCH(H3,Sheet1!$A$2:$A$100,0),MATCH(I3,Sheet1!$B$1:$D$1,0))
解释一下:
2.1 规划搜索区域:
2.2 在H3,I3上设置搜索区域:
注意,区域的不同颜色
然后,就是在J3,输入上面的公式,这样,一个带下拉的进度选择就实现了。
一个项目计划+每日工作任务记录的模板:
1 先定义一个项目计划列表:
里面包括一个日历表,和一个重要事情的备注,和项目的甘特图(计划的时间图)
分项目包括了3个可能的阶段,比如,月计划,我分了三个阶段的步骤,后面接的是具体的任务说明和负责人。然后,是重要度和甘特图对于的时间。
时间可以通过输入【=】+【日历表的日期】选取
2 定义了一个每日任务记录表:
这个表里面,记录了工作的开始结束时间。然后,会自动记录在这个项目上的时间花费(这个便于计算不同伙伴在项目上的时间投入)
因为我的伙伴在不同的地点,有出差,所以,我增加了出差的选项,便于后面统计差旅费用。
在分项目名称的后面,可以通过下拉菜单,选取前面的计划表的项目名称,工作任务和现在你在的工作阶段。
这样,可以方便后面统计和监控项目的完成情况。
上面的表格,我上传到资源里面,大家需要的话可以下载(收了一点点费用)
一个项目计划+每日工作任务记录的模板:资源-CSDN文库