Excel周报制作

news2024/10/5 13:38:20

Excel周报制作

文章目录

    • Excel周报制作
        • 一、理解数据
        • 二、数据透视表
        • 三、常用函数
          • 1.sum-求和
          • 2.sumif-单条件求和
          • 3.sumifs-多条件求和
          • 4.sum和subtotal的区别
          • 5.if函数
          • 6.if嵌套
          • 7.vlookup函数和数据透视表聚合
          • 8.index和match函数
        • 四、周报开发
        • 五、报表总览

一、理解数据

这是一个线上外卖门店的数据。

通过全选一行和全选一列得知,数据有561行(去掉表头),24列。

使用CTR L+SHIFT+L快捷键对所有列进行快速筛选。

品牌名称:一共有2个值,分别是蛙小辣火锅杯(总账号)和拌客(武宁路店)

门店ID:每个门店有一个固定的ID

平台:拼音格式,一共有eleme和meituan两个值

平台i:文本格式,一共有饿了么和美团两个值

平台门店名称

蛙小辣火锅杯(五角场店)和蛙小辣火锅杯(五角场店)的括号格式不同(中英文),这两个店是一个店吗?拌客干拌麻辣烫(武宁路店)、拌客·干拌麻辣烫(武宁路店)和拌客干拌麻辣烫(武宁路店)这几个店是同一个店吗?

在筛选中,只选择蛙小辣火锅杯(五角场店)和蛙小辣火锅杯(五角场店),查看它们的门店ID,发现蛙小辣火锅杯(五角场店)的门店ID为2000507076,蛙小辣火锅杯(五角场店)的门店ID为8184590,所以它们是不同的两个店。

在筛选中,只选择拌客干拌麻辣烫(武宁路店)、拌客·干拌麻辣烫(武宁路店)和拌客干拌麻辣烫(武宁路店),查看它们的门店ID,拌客干拌麻辣烫(武宁路店)和拌客·干拌麻辣烫(武宁路店)的门店ID均为337460136,说明它们两个是同一个店,拌客干拌麻辣烫(武宁路店)的门店ID是9428110,说明它是不同的一个店。

造成这个情况的原因可能是同一家店在平台上进行过关店重开,以享受平台的新店流量补贴,重开时的平台门店名称和之前的有所不同。

GMV:GMV(全称Gross Merchandise Volume),即商品交易总额,是成交总额(一定时间段内)的意思。多用于电商行业,一般包含拍下未支付订单金额

这里只是表面金额——外卖的原价,真正入账还需要减去各种平台的满减、红包、补贴等。

商家实收:去除掉平台满减、红包、补贴、抽成后的实际入账金额

门店曝光量:这家门店在外卖平台被多少个用户看到过

门店访问量:有多少用户在外卖平台中点进了这家门店

门店下单量:有多少用户在这家门店下单。无效订单+有效订单=门店下单量

无效订单:下单后中途取消或退款等等

进店人数:这是线上外卖门店的数据,进店人数指的是在外卖平台上进入门店的人数,和门店访问量相对应,而不是线下进入门店的人数

一般来说,曝光人数、进店人数、下单人数都是要比门店曝光量、门店访问量、门店下单量要少的,因为存在一个人多次进店的情况。但是有些时候(比如第一行)会出现进店人数比门店访问量要多的情况,这种数据是有问题的。

它们之间的区别类似于UV和PV的区别。

image-20230904101428392

CPC:Cost Per Click,每产生一次点击所花费的成本

二、数据透视表

选择源数据中任意一个单元格,点击插入选项卡下的数据透视表。

三、常用函数

1.sum-求和
1-8月GMV1月和8月GMV
总计=SUM(‘拌客源数据1-8月’!J2:J562)=SUM(‘拌客源数据1-8月’!J2:J25,‘拌客源数据1-8月’!J496:J562)

1-8月GMV在工作表拌客源数据1-8月中,是一个跨工作表求和的问题。

方法1:输入=SUM(),点击上方fx按钮,点击拌客源数据1-8月工作表,CTRL+SHIFT+↓选中GMV列,点击确定。

方法2:点击视图选项卡下的新建窗口,在xxxx.xlsx:2下选择GMV列,省去了来回切换工作表的麻烦。

新建的窗口和原来的工作簿是同样一个工作簿。

win+→实现左右分屏。

1月和8月GMV:SUM函数可以用逗号分隔多个区域,对多个区域进行求和。

使用视图选项卡下的冻结窗格—冻结首列,将首列(日期)冻结,方便操作。

1月的GMV:J2:J25

8月的GMV:J496:J562

筛选并没有剔除数据,所以筛选1月和8月后对整列求和,得到的还是1-8月GMV。

2.sumif-单条件求和

语法

SUMIF(range,criteria,sum_range)

(1) Range 为用于条件判断的单元格区域。

(2) Criteria 为确定哪些单元格将被相加求和的条件,其形式可以为数字、表达式或文本。例如,条件可以表示为 32、“32”、“>32” 或 “apples”。(使用方法同COUNTIF)

(3) Sum_range 是需要求和的实际单元格。(可只写该区域的第一个单元格)

GMV
2020/07/01=SUMIF(‘拌客源数据1-8月’!$A:$A,B15,‘拌客源数据1-8月’!$J:$J)
2020/07/07
2020/07/16
2020/07/17
2020/08/08
2020/08/19
2020/08/21

我们以第一行的问题为例。第一行要求我们求出日期为2020/07/01的GMV总和。

我们在SUMIF函数的第一个参数中选中日期这一整列,第二个参数选择2020/07/01所在的单元格,第三个参数选择GMV这一整列。

再使用快捷键F4将第一个参数和第三个参数全部锁定,将鼠标移至第一行GMV单元格的右下角时双击,即可快速求出所有答案。

第一个参数告诉Excel判断的依据在哪个区域,第二个参数告诉Excel具体的判断条件,第三个参数告诉Excel按照判断条件对哪个区域求和。

3.sumifs-多条件求和

(1)以求2020/07/01的美团平台GMV为例

image-20230905010750924

Sum_range:需要求和的区域

Criteria_range1:用于条件判断的单元格区域1

Criteria1:判断条件1

Criteria_range2:用于条件判断的单元格区域2

Criteria2:判断条件2

(2)同比和环比

image-20230906085000269

GPT:

当我们分析数据时,“同比”(Year-over-Year,YoY)和"环比"(Quarter-over-Quarter,QoQ)是两个常用的比较方式,用于衡量数据在不同时间段之间的变化。以下是它们的概念解释:

  1. 同比(Year-over-Year,YoY):同比指的是将当前时间段的数据与同一时间段的前一年相比较。它用于比较相同时间段的不同年份的数据变化情况。例如,我们可以将今年第三季度的销售额与去年同一季度的销售额进行同比比较,以评估销售业绩的增长或下降。

  2. 环比(Quarter-over-Quarter,QoQ):环比指的是将当前时间段的数据与上一个时间段相比较。它用于比较相邻时间段的数据变化情况。例如,在季度数据中,我们可以将本季度的销售额与上一季度的销售额进行环比比较,以了解业绩的季度波动情况。

这两种比较方式用于帮助我们观察和分析数据的增长趋势、周期性变化以及季节性影响。通过同比和环比分析,我们可以更好地了解数据的变化情况,并作出相应的决策或判断。

2020年环比

=(2020年数据-2019年数据)/2019年数据

=2020年数据/2019年数据-2019年数据/2019年数据

=2020年数据/2019年数据-1

2020年7月环比=2020年7月数据/2020年6月数据-1

2020年7月同比=2020年7月数据/2019年7月数据-1

2020年7月1日的日环比=2020年7月1日数据/2020年6月30日数据-1

2020年7月1日的月环比=2020年7月1日数据/2020年6月1日数据-1

2020年7月1日的周环比=2020年7月1日数据/2020年6月24日数据-1

同比:上年同期相比 环比:同年上一期相比

2020/07/01的日环比:2020-07-01的GMV/2020-06-30的GMV-1

=SUMIFS('拌客源数据1-8月'!$J:$J,'拌客源数据1-8月'!$H:$H,"美团",'拌客源数据1-8月'!$A:$A,B30)/SUMIFS('拌客源数据1-8月'!$J:$J,'拌客源数据1-8月'!$H:$H,"美团",'拌客源数据1-8月'!$A:$A,B30-1)-1

日同比:当天GMV/前一个月的那天的GMV

2020年7月1日的日同比 = 2020年7月1日数据 / 2020年6月1日数据 - 1

使用YEAR、MONTH、DAY、DATE函数求出2020年6月1日的日期。

2020年6月1日数据:

=SUMIFS('拌客源数据1-8月'!$J:$J,'拌客源数据1-8月'!$H:$H,"美团",'拌客源数据1-8月'!$A:$A,DATE(YEAR(B30),MONTH(B30)-1,DAY(B30)))

(3)求2020年1月的GMV

美团GMV月环比
2020/01=SUMIFS(‘拌客源数据1-8月’!J:J,‘拌客源数据1-8月’!H:H,“美团”,‘拌客源数据1-8月’!A:A,“>=”&E39,‘拌客源数据1-8月’!A:A,“<=”&G39)=C39/SUMIFS(‘拌客源数据1-8月’!J:J,‘拌客源数据1-8月’!H:H,“美团”,‘拌客源数据1-8月’!A:A,“>=”&DATE(YEAR(B39),MONTH(B39)-1,1),‘拌客源数据1-8月’!A:A,“<=”&DATE(YEAR(B39),MONTH(B39),1)-1)-1
2020/02
2020/03
2020/04
2020/05
2020/06
2020/07
2020/08

问题解析:求2020年1月的GMV即求2020年1月1日到2020年1月31日的GMV,即使用SUMIFS函数,条件设置为>=这个月的第一天,<=这个月的最后一天。

每个月的第一天:

=DATE(YEAR(B39),MONTH(B39),1)

每个月的最后一天:下个月的第一天减去一天

=DATE(YEAR(B39),MONTH(B39)+1,1)-1

在SUMIFS中使用条件表达式时,>=这种比较符需要加上双引号,并且将比较符用&和后边的表达式连接。

">="&表达式

image-20230906110341734

2020-01的月环比:2020年1月的数据/2019年12月的数据-1

4.sum和subtotal的区别

语法

SUBTOTAL(function_num,ref1,[ref2],…)

SUBTOTAL 函数语法具有以下参数:

  • Function_num 必需。 数字 1-11 或 101-111,用于指定要为分类汇总使用的函数。 如果使用 1-11,将包括手动隐藏的行,如果使用 101-111,则排除手动隐藏的行;始终排除已筛选掉的单元格。

  • Ref1 必需。 要对其进行分类汇总计算的第一个命名区域或引用。

  • Ref2,… 可选。 要对其进行分类汇总计算的第 2 个至第 254 个命名区域或引用。

sum函数subtotal函数
GMV=SUM(‘拌客源数据1-8月’!J:J)=SUBTOTAL(9,‘拌客源数据1-8月’!J:J)
不使用筛选1071473.251071473.25
筛选出美团的数据1071473.25305135.17

SUBTOTAL可以根据源数据的筛选进行求和。

5.if函数
月份GMV判断是否大于月目标10万
1月64233.37=IF(C64>100000,“达标”,“不达标”)
6.if嵌套
AB判断
00=IF(I80=0,IF(J80=0,“A=0 B=0”,“A=0 B≠0”),IF(J80=0,“A≠0 B=0”,“A≠0 B≠0”))
10A≠0 B=0
11A≠0 B≠0
01A=0 B≠0
月份GMVcpc总费用大于月目标10万且花费少于5千的为达标
1月64233.373344.24=IF(C80>100000,IF(D80<5000,“达标”,“不达标”),“不达标”)
2月32755.71902.87不达标
3月78895.692645.32不达标
4月108307.074513.12达标
5月194276.9711804.4不达标
6月255727.798302.53不达标
7月255891.7313616.33不达标
8月81384.923680.31不达标
7.vlookup函数和数据透视表聚合

视频教程:【EXCEL教程 | 拜托三连了!全B站最用心(没有之一)的EXCEL免费课程!OFFICE/WPS/表格/EXCEL函数/EXCEL技巧/数据分析/办公软件】

语法

VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])

(1)lookup_value 需要在数据表首列进行搜索的值,可以是数值,引用或字符串

(2) table_array 要在其中搜索数据的文字、数字或逻辑值表,可以是对区域或区域名称的引用

(3) col_index_num 返回匹配的序列号,表中首个值列的序号为1

(4) range_lookup 逻辑值:大致匹配用True或省略,精确匹配用False

举例说明

  • 精确查找
CDE
20姓名基本工资奖金
21员工11797604
22员工21979522
23员工31903994
24员工41754745
25员工51572776
26员工61521673
27员工71777974
28员工81544985
29员工91640653

我们想查找姓名为员工5的基本工资,方法如下:

姓名基本工资
员工5=VLOOKUP(“员工5”,C20:E29,2,0)

第一个参数代表要查找员工5,第二个参数代表在C20:E29这个区域内查找,第三个参数代表要返回的是找到的那行序列中的第2个数据,第四个参数代表精确查找。

col_index_num 返回匹配的序列号,表中首个值列的序号为1,这点与大部分编程语言中从0开始计数不同。

  • 模糊查找
GHI
33成绩大于等于成绩小于成绩级别
34060不及格
356080及格
368090良好
3790100优秀

我们需要从上表中查询成绩级别,填入下面的表中

CD
33成绩成绩级别
3482=VLOOKUP(C34,$G$33:$I$37,3,1)
3595
3688
3768
3886
3975
4082
4176
4259
4355
4463
4566
4684
4769
4882
4972

练习

门店ID门店名称
2001104355=VLOOKUP(B96,‘拌客源数据1-8月’!$D$1:$E$562,2,0)
8184590五角场店
305225345龙阳广场店
2000507076五角场店
8106681怒江路店
8491999宝山店
337460136拌客干拌麻辣烫(武宁路店)
9428110拌客干拌麻辣烫(武宁路店)
FG
95全名
96a1
97abc2
98abcd3
99acd4
100cb5
101bc6
102bcc7
103bdd18

注意:第一行第一列的a后边有一个空格

查找a对应的值

查找项返回值
a=VLOOKUP(I96&“*”,F95:G103,2,1)

这时候就需要使用通配符。

查找b开头并且是三个字符所对应的数值

b=VLOOKUP(I99&“??”,F95:G103,2,0)

vlookup引用数据透视表

我们首先选中源数据的任意单元格,点击插入选项卡下的表格–数据透视表。

在选中放置数据透视表的位置选项下,选中现有工作表,选取一个空白位置(我这里选择的是O105)

image-20230906200833199

数据透视表的范围是O105:P114

接下来我们需要用vlookup引用数据透视表。

门店IDGMV
2001104355=VLOOKUP(O96,$O$106:$P$113,2,0)
8184590
305225345
2000507076
8106681
8491999
337460136
9428110

这里要注意对数据透视表的范围进行绝对引用(固定)。

8.index和match函数

让excel自动根据列名去源数据里找对应的数值,完成聚合运算。

MATCH函数语法

MATCH(lookup_value, lookup_array, [match_type])

MATCH 函数语法具有下列参数:

  • lookup_value 必需。 要在 *lookup_array* 中匹配的值。 例如,如果要在电话簿中查找某人的电话号码,则应该将姓名作为查找值,但实际上需要的是电话号码。

    *lookup_value* 参数可以为值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。

  • lookup_array 必需。 要搜索的单元格区域。

  • match_type 可选。 数字 -1、0 或 1。 *match_type* 参数指定 Excel 如何将 *lookup_value* 与 *lookup_array* 中的值匹配。 此参数的默认值为 1。

MATCH函数是查找一个值在一个序列(一行或者一列)中的第几个位置。

从编程的角度可以理解为,有一个数组array=[a,b,c,d,e,f,g],查找一个值a在数组array中的索引(第几个位置),match会返回1;查找e,返回5。

举例:

B
111平台门店名称
112蛙小辣·美蛙火锅杯(宝山店)
113蛙小辣火锅杯(合生汇店)
114蛙小辣火锅杯(龙阳广场店)
115蛙小辣火锅杯(五角场店)
116蛙小辣·美蛙火锅杯(长风大悦城店)
117蛙小辣火锅杯(宝山店)
118蛙小辣火锅杯(五角场店)
119蛙小辣火锅杯麻辣烫(五角场店)
120蛙小辣·美蛙火锅杯(五角场店)
121蛙小辣·美蛙火锅杯麻辣烫(宝山店)
122蛙小辣·美蛙火锅杯麻辣烫(五角场店)
123蛙小辣·美蛙火锅杯麻辣烫(五角场店)
124拌客干拌麻辣烫(武宁路店)
125拌客·干拌麻辣烫(武宁路店)
126拌客干拌麻辣烫(武宁路店)

查询B115 蛙小辣火锅杯(五角场店)在B列中(不包含平台门店名称)的索引(第几个位置)

=MATCH(B115,B112:B126,0)
结果为4
平台门店名称门店ID品牌名称品牌IDGMV进店人数下单人数

查询品牌ID在这一行中是第几个

=MATCH("品牌ID",B111:I111,0)
结果是5

INDEX函数语法

INDEX(array,row_num,col_num)

INDEX(区域,行号,列号)

INDEX函数返回的是在一片区域内第几行第几列的值。

举例:

门店ID门店名称
2001104355宝山店
8184590五角场店
305225345龙阳广场店
2000507076五角场店
8106681怒江路店
8491999宝山店
337460136拌客干拌麻辣烫(武宁路店)
9428110拌客干拌麻辣烫(武宁路店)

我们希望查找上表中第4行第1列的值

=INDEX(B95:C103,4,1)
结果是305225345

我们可以将INDEX和MATCH嵌套使用。

举例:

BCDE
111平台门店名称门店ID品牌名称
112蛙小辣·美蛙火锅杯(宝山店)
113蛙小辣火锅杯(合生汇店)
114蛙小辣火锅杯(龙阳广场店)
115蛙小辣火锅杯(五角场店)
116蛙小辣·美蛙火锅杯(长风大悦城店)
117蛙小辣火锅杯(宝山店)
118蛙小辣火锅杯(五角场店)
119蛙小辣火锅杯麻辣烫(五角场店)
120蛙小辣·美蛙火锅杯(五角场店)
121蛙小辣·美蛙火锅杯麻辣烫(宝山店)
122蛙小辣·美蛙火锅杯麻辣烫(五角场店)
123蛙小辣·美蛙火锅杯麻辣烫(五角场店)
124拌客干拌麻辣烫(武宁路店)
125拌客·干拌麻辣烫(武宁路店)
126拌客干拌麻辣烫(武宁路店)
=INDEX(B111:E126,MATCH(D111,D111:D126,0),MATCH(D111,B111:E111,0))

上面的函数查询结果是 门店ID

将存有结果的单元格向右拖拽,查询结果是 品牌名称

练习案例

我们希望根据左侧的平台门店名称,从源数据中求出门店ID等列。

平台门店名称门店ID品牌名称品牌IDGMV进店人数下单人数
蛙小辣·美蛙火锅杯(宝山店)
蛙小辣火锅杯(合生汇店)
蛙小辣火锅杯(龙阳广场店)
蛙小辣火锅杯(五角场店)
蛙小辣·美蛙火锅杯(长风大悦城店)
蛙小辣火锅杯(宝山店)
蛙小辣火锅杯(五角场店)
蛙小辣火锅杯麻辣烫(五角场店)
蛙小辣·美蛙火锅杯(五角场店)
蛙小辣·美蛙火锅杯麻辣烫(宝山店)
蛙小辣·美蛙火锅杯麻辣烫(五角场店)
蛙小辣·美蛙火锅杯麻辣烫(五角场店)
拌客干拌麻辣烫(武宁路店)
拌客·干拌麻辣烫(武宁路店)
拌客干拌麻辣烫(武宁路店)

我们使用INDEX函数,区域选中全部源数据(A:X)

=INDEX('拌客源数据1-8月'!$A:$X,row_num,col_num)

INDEX函数的第二个参数是row_num,即行数。**左侧的平台门店名称(蛙小辣·美蛙火锅杯(宝山店))和上方的列名称(门店ID)是处于同一行的。**所以我们想找到名为蛙小辣·美蛙火锅杯(宝山店)的门店ID在源数据中处于第几行,只需要找到蛙小辣·美蛙火锅杯(宝山店)在源数据中处于第几行。

这里我们使用MATCH函数。

MATCH($B112,'拌客源数据1-8月'!$I:$I,0)

INDEX函数的第三个参数是col_num,即列数。我们想找到列名(门店ID)在源数据中处于第几列,即我们需要找到门店ID在源数据首行中处于第几个位置。

MATCH(D$111,'拌客源数据1-8月'!$A$1:$X$1,0)

通过嵌套的MATCH函数,我们锁定了行和列,再通过INDEX函数返回我们需要的值。

=INDEX('拌客源数据1-8月'!$A:$X,MATCH($B112,'拌客源数据1-8月'!$I:$I,0),MATCH(D$111,'拌客源数据1-8月'!$A$1:$X$1,0))

有一点我们需要注意!

  • 我们对源数据区域的选择,都需要使用快捷键F4进行行和列的锁定。

  • 我们希望在下拉的时候,上方列名不会改变,而在右拉的时候,上方列名进行改变(由门店ID变为品牌名称)所以我们需要对列名进行列锁定,即$B112

  • 我们希望在右拉的时候,左侧平台门店名称不会改变,而在下拉的时候,左侧平台门店名称进行改变(由宝山店变为合生汇店)

    所以我们需要对平台门店名称进行行锁定,即D$111

综上:

=INDEX('拌客源数据1-8月'!$A:$X,MATCH($B112,'拌客源数据1-8月'!$I:$I,0),MATCH(D$111,'拌客源数据1-8月'!$A$1:$X$1,0))

我们向下拖拽和向右拖拽后,自动填充门店ID、品牌名称和品牌ID列。

还剩下三列GMV、进店人数、下单人数

我们通过SUMIF和INDEX+MATCH联用。

INDEX函数如果行位置是0的话,会返回整列;如果列位置是0的话,会返回整行。

我们使用SUMIF函数来聚合数据。

  • SUMIF的第一个参数:判断的区域,这里是平台门店名称这一整列
INDEX('拌客源数据1-8月'!$A:$X,0,MATCH("平台门店名称",'拌客源数据1-8月'!$1:$1,0))

INDEX函数第一个参数代表整个源数据,第二个参数为0代表选中一整列,第三个参数是MATCH函数,返回的是平台门店名称在源数据首行的第几个位置。

整个INDEX函数的结果是返回了平台门店名称这一整列。

需要注意源数据的位置都应该锁住。

  • SUMIF的第二个参数:判断条件,这里是$B112,即左侧的平台门店名称。

  • SUMIF的第三个参数:求和区域,这里是上方列名(GMV)。

INDEX('拌客源数据1-8月'!$A:$X,0,MATCH(G$111,'拌客源数据1-8月'!$1:$1,0)

INDEX函数第一个参数代表整个源数据,第二个参数为0代表选中一整列,第三个参数是MATCH函数,返回的是上方列名G$111在源数据首行中的第几个位置。

整个INDEX函数的结果是返回了上方列名(GMV)在源数据中的一整列。

综上:

=SUMIF(INDEX('拌客源数据1-8月'!$A:$X,0,MATCH("平台门店名称",'拌客源数据1-8月'!$1:$1,0)),$B112,INDEX('拌客源数据1-8月'!$A:$X,0,MATCH(G$111,'拌客源数据1-8月'!$1:$1,0)))

需要注意行列的锁定。

向下向右拖拽,填充其他单元格。

函数部分总结:

image-20230907000258835

四、周报开发

一切美化工作都放到最后去做。

我们在日期列的第一行输入2020-08-10,然后第二行引用第一行的单元格+1,从第二行开始向下拖拽。

这时候如果我们改变第一个单元格的值,其他日期也会随之改变。

image-20230907105102760

平台部分点击数据选项卡下的数据验证,将验证条件改为允许序列,数据来源输入 全部,美团,饿了么

GMV列的函数逻辑:如果平台是全部,则直接求GMV;如果平台是美团或饿了么,则需要使用SUMIF/SUMIFS

if(平台=全部,sumif(日期列,日期,GMV),sumifs(GMV,日期列,日期,平台列,平台))

第一版GMV列:

=IF($H$5="全部",SUMIF('拌客源数据1-8月'!$A:$A,$A13,'拌客源数据1-8月'!$J:$J),SUMIFS('拌客源数据1-8月'!$J:$J,'拌客源数据1-8月'!$A:$A,$A13,'拌客源数据1-8月'!$H:$H,$H$5))

我们再使用INDEX+MATCH函数对第一版进行改进。

=IF($H$5="全部",SUMIF('拌客源数据1-8月'!$A:$A,$A13,INDEX('拌客源数据1-8月'!$A:$X,0,MATCH(C$12,'拌客源数据1-8月'!$1:$1,0))),SUMIFS(INDEX('拌客源数据1-8月'!$A:$X,0,MATCH(C$12,'拌客源数据1-8月'!$1:$1,0)),'拌客源数据1-8月'!$A:$A,$A13,'拌客源数据1-8月'!$H:$H,$H$5))

我们对日期列不需要进行修改,只需要使用INDEX+MATCH修改上方列名。

向下、向右拖拽,得到部分结果。

到手率、客单价、进店转化率、下单转化率这四列只需要引用已经计算出来的单元格做除法即可。

我们还剩下一列营销占比需要计算。

营销占比=cpc总费用/GMV

我们的源数据中是有cpc总费用这一列的,所以我们把所有GMV(C$12)的位置直接改为"cpc总费用",再除以GMV单元格的引用即可。

=IF($H$5="全部",SUMIF('拌客源数据1-8月'!$A:$A,$A13,INDEX('拌客源数据1-8月'!$A:$X,0,MATCH("cpc总费用",'拌客源数据1-8月'!$1:$1,0))),SUMIFS(INDEX('拌客源数据1-8月'!$A:$X,0,MATCH("cpc总费用",'拌客源数据1-8月'!$1:$1,0)),'拌客源数据1-8月'!$A:$A,$A13,'拌客源数据1-8月'!$H:$H,$H$5))/C13

点击总计行的单元格,使用Alt+=快捷键快速求和。

现在只剩营销占比列的总计待求解。

营销占比总计=8-10至8-16的cpc总费用/8-10至8-16的GMV

=IF($H$5="全部",SUMIFS('拌客源数据1-8月'!T:T,'拌客源数据1-8月'!A:A,">="&A25,'拌客源数据1-8月'!A:A,"<="&B31),SUMIFS('拌客源数据1-8月'!T:T,'拌客源数据1-8月'!A:A,">="&A25,'拌客源数据1-8月'!A:A,"<="&B31,'拌客源数据1-8月'!H:H,H5))/C20

五、报表总览

全部

image-20230907191142735

美团

image-20230907191159120

饿了么

image-20230907191214573

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/988051.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

内存泄露排查思路

1、泄露情况 启动闪退运行一段时间宕机 2、排查步骤 获取堆内存快照dump使用VisualVM分析dump文件通过查看堆信息的情况&#xff0c;定位内存溢出问题 jmap -dump:formatb,fileheap.hprof pid -XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPath输出路径 3、在VisualVM中分…

公网访问群辉相册Synology Photos ,快速搭建群辉相册同时远程访问【无公网IP内网穿透】

文章目录 前言本教程解决的问题是&#xff1a;按照本教程操作完成能够达到的效果是&#xff1a;1.在群辉中下载并安装Synology Photos套件2.设置共享文件夹3.添加您想共享的照片4.cpolar搭建隧道5.公网ip地址访问您的分享相册6.移动端app使用公网上传照片并及时分享 前言 很多…

Linux学习之基础工具一

1.Linux 软件包管理器 yum 首先我们需要知道的是在Linux下&#xff0c;现存的软件和指令是一定的&#xff0c;而有的时候我们想需要更多的指令或者软件&#xff0c;而这在Linux本身下是没有的&#xff0c;故我们可以利用指令yum指令安装或卸载你想要或者不需要的软件&#xff…

【Java基础篇 | 面向对象】—— 封装详解

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 本专栏旨在分享学习Java的一点学习心得&#xff0c;欢迎大家在评论区讨论&#x1f48c; 目录 一、封装1.1什么是封装…

无涯教程-JavaScript - IMCONJUGATE函数

描述 IMCONJUGATE函数以x yi或x yj文本格式返回复数的复共轭。 语法 IMCONJUGATE (inumber)争论 Argument描述Required/OptionalInumberA complex number for which you want the conjugate.Required Notes 使用COMPLEX将实系数和虚系数转换为复数。 复数的共轭是- $$…

数字自我主权的起点,DID 如何为下一代网络居民提供身份入口?

随着 Web3 浪潮逐渐影响社交、文化、娱乐行业&#xff0c;现存的数字身份模式已无法满足未来的网络世界&#xff0c;DID&#xff08;去中心化身份&#xff09;以超越 Web2 身份验证体系的高度去中心化、开放自由度等属性引来了行业人士的关注与讨论。然而&#xff0c;在 DID 领…

成都睿趣科技:抖音开店初期要注意什么

随着社交媒体和短视频平台的崛起&#xff0c;抖音已经成为了一个风靡全球的短视频应用&#xff0c;拥有着庞大的用户群体。因此&#xff0c;越来越多的创业者开始在抖音上开设自己的线上店铺&#xff0c;希望借助这个平台赚取丰厚的利润。然而&#xff0c;在抖音开店初期&#…

ARMv8 TTBRx寄存器

ARMv8 TTBRx寄存器 1 TTBR0_ELx and TTBR1_ELx2 TTBR0_ELx2.1 TTBR0_EL12.2 TTBR0_EL22.3 TTBR0_EL33 TTBR13.1 TTBR1_EL13.2 TTBR1_EL2 4 访问TTBRx寄存器4.1 TTBR0_ELx4.2 TTBR1_ELx 5 TTBRx保留的是物理地址还是虚拟地址5.1 保存的是物理地址还是虚拟地址5.2 为什么是物理地…

Redisson分布式锁实战

实战来源 此问题基于电商 这周遇见这么一个问题&#xff0c;简略的说一下 由MQ发布了两个消息&#xff0c;一个是订单新增&#xff0c;一个是订单状态变更 由于直接付款之后&#xff0c;这两个消息的发布时间不分先后&#xff0c;可能会造成两种情况&#xff0c;1、订单状态变更…

N5235B是德科技网络分析仪50GHz

181/2461/8938对无源元器件和简单的有源器件执行基本分析 适用于对成本非常敏感的应用&#xff0c;可以在高达 50 GHz 的频率范围内精确测量 S 参数 具有出色的性价比&#xff0c;可用于微波器件制造测试 可以配置经济型解决方案&#xff0c;用于信号完整性测量和材料表征 …

【python自动化】七月PytestAutoApi开源框架学习笔记(一)

前言 本篇内容为学习七月大佬开源框架PytestAutoApi记录的相关知识点&#xff0c;供大家学习探讨 项目地址&#xff1a;https://gitee.com/yu_xiao_qi/pytest-auto-api2 阅读本文前&#xff0c;请先对该框架有一个整体学习&#xff0c;请认真阅读作者的README.md文件。 本文…

ChatGPT AIGC 完成Excel条件求和函数

有一个明细表如下: 现在要根据日期来对销量进行求和。数据量大约200多条。 要写出Excel函数公式可以交给ChatGPT来操作。 公式直接就生成好了, 公众号:BI智能数据分析 =SUMIF($D$2:$D$100,G2,$E$2:$E$100) 然后我们将公式复制到表格中来进行验证。 因为ChatGPT在生成公式…

mac版微信小程序反编译学习

更新时间&#xff1a;2023年07月20日16:57:52 mac版本的微信小程序是没有做加密的&#xff0c;可以直接反编译 反编译的工具是适用于mac和Windows的&#xff0c;其实Windows还有其他更好用的工具。 本文是针对mac下使用微信的小程序进行解密&#xff0c;版本为3.8.1。 小程…

降低银行客户获取成本 (CAC) 的 3 种方法

银行的运营环境以及客户与银行服务互动的方式经历了深刻而彻底的变化。因此&#xff0c;银行业用于获取客户的方法必须经历平行演变。 传统上&#xff0c;客户根据利率和提供的服务范围来决定银行。然而&#xff0c;今天的客户期望更多。他们不仅需要有竞争力的价格和多样化的…

燃料电池FCU开发技术方案

燃料电池FCU电控开发介绍 FCU作为新能源汽车核心部件&#xff0c;对于氢燃料电池&#xff0c;追求的指标有&#xff1a;能量密度、额定功率、最大峰值功率&#xff08;保持有限时间&#xff09;、最小稳定功率&#xff08;小于该功率&#xff0c;功率输出波动大&#xff0c;长…

九号滑板车F2 Pro采用全新折叠设计,为用户带来便捷使用体验

拥挤的城市中&#xff0c;滑板车可以作为一种快速、便捷的交通工具&#xff0c;帮助你避开交通堵塞。而且滑板车轻便&#xff0c;容易携带&#xff0c;你可以将它放在车上、公共汽车上、火车上&#xff0c;甚至在办公室或学校里使用。今天就带大家了解一款适合城市通勤骑行的车…

Docker从认识到实践再到底层原理(四-2)|Docker镜像仓库实战案例

前言 那么这里博主先安利一些干货满满的专栏了&#xff01; 首先是博主的高质量博客的汇总&#xff0c;这个专栏里面的博客&#xff0c;都是博主最最用心写的一部分&#xff0c;干货满满&#xff0c;希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

Competitive Collaboration 论文阅读

论文信息 题目&#xff1a;Competitive Collaboration: Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation 作者&#xff1a;Anurag Ranjan&#xff0c; Varun Jampani&#xff0c; Lukas Balles 来源&#xff1a;CVPR 时间&#x…

考研资料共享系统的设计说明

考研资料共享系统的设计说明 设计意义及目的模块划分技术难点写项目中遇到的问题该项目的后端模块介绍该项目的前端模块介绍运行演示Gitee链接 设计意义及目的 为了方便找资料&#xff0c;了解考研形式&#xff1b;另一方面是锻炼编写系统的能力 模块划分 主要划分为&#xff1…

Oracle VM VirtualBox 安装 Ubuntu Linux

Virtual Box VirtualBox是一个强大的、面向个人用户或者企业用户的虚拟机产品&#xff0c;其支持x86以及AMD64/Intel64的计算架构&#xff0c;功能特性丰富、性能强劲&#xff0c;支持GPL开源协议&#xff0c;其官方网址是www.virtualbox.org&#xff0c;由Oracle开源&#xf…