首页 > 其他分享 >实习:4.1

实习:4.1

时间:2022-08-14 21:46:11浏览次数:44  
标签:11 10 13 4.1 系统 指标 实习 数据

模拟需求:

这是源数据:包含所有系统和所有的指标,在一张excel表里

系统

地区

指标4

指标2

指标5

指标1

指标3

A

苏州

11

3

7

10

13

A

杭州

4

5

3

13

3

A

广州

10

10

14

7

14

A

深圳

11

3

13

7

5

A

南京

10

7

13

15

8

B

苏州

6

4

14

6

6

B

杭州

14

8

6

11

3

B

广州

11

15

3

13

15

B

深圳

10

5

7

3

11

B

南京

7

12

8

7

5

C

苏州

5

8

3

7

9

C

杭州

5

6

4

7

7

C

广州

4

8

9

10

9

C

深圳

4

6

2

3

10

C

南京

10

3

3

6

9


另外一张表的sheet1数据如下

系统

地区

指标1

指标2

指标3

A

苏州

3

7

5

A

杭州

6

7

7

A

广州

5

9

9

A

深圳

2

5

8

A

南京

3

8

2

把源数据中系统A下的指标1,2,3更新到sheet1中,结果如下

系统

地区

指标1

指标2

指标3

A

苏州

10

3

13

A

杭州

13

5

3

A

广州

7

10

14

A

深圳

7

3

5

A

南京

15

7

8

 

Sheet2数据如下:

系统

地区

指标1

指标3

指标2

B

苏州

10

9

10

B

杭州

8

8

5

B

广州

3

6

5

B

深圳

2

3

8

B

南京

4

6

10

把源数据中系统B下的指标1,3,2更新到sheet1中,结果如下

系统

地区

指标1

指标3

指标2

B

苏州

6

6

4

B

杭州

11

3

8

B

广州

13

15

15

B

深圳

3

11

5

B

南京

7

5

12


Sheet3数据如下:

系统

地区

指标4

指标2

指标5

C

苏州

11

3

7

C

杭州

4

5

3

C

广州

10

10

14

C

深圳

11

3

13

C

南京

10

7

13

把源数据中系统C下的指标4,2,5更新到sheet3中,结果如下

系统

地区

指标4

指标2

指标5

C

苏州

5

8

3

C

杭州

5

6

4

C

广州

4

8

9

C

深圳

4

6

2

C

南京

10

3

3

 

注意:不同的sheet表含有不同的系统,并且不同sheet表格的指标个数和指标顺序有区别。

 

真实场景:

(1)含有50个系统,存放在50个sheet表格里。每个sheet表里指标个数8-11不等

(2)源数据50个系统,指标个数20左右。

 

我的方式是在源数据中先筛选系统A,因为地区顺序是一致的,不用管地区,然后复制指标1所在列粘贴,复制指标2所在列粘贴,指标三所在列粘贴。

需要操作三次,并且在不同的表格,比较麻烦。真实情况10个指标,50个系统,这种方法要复制500次。

 那么,能不能对sheet表直接匹配源数据中对应的指标列,这样只需要50次

或者通过其他方式(如python)简化操作流程和减少时间

 

把这个需求进行拆分,先从小的情况慢慢分析,然后增加难度。

简单情况1

 

 

 三个系统A,B,C在不同sheet的相同位置,A5:E10

 

 

 源数据的位置在A1:G16

 

 

 然后再A系统中的C6单元格输入:

=VLOOKUP($B6,源数据!$B$1:$G$6,MATCH(C$5,源数据!$B$1:$G$1,0),0)

解释:第1个逗号前,$用于把B列固定,便于比对地区

     第2个逗号前,表示查找的数据范围,要用绝对引用

    match用于找到匹配列,第1个参数,查找字段的位置,要固定行;第2个参数,匹配字段的范围;第3个 0 精确匹配

    0表示精确匹配

 

同理在B系统中C6单元格输入:

=VLOOKUP($B6,源数据!$B$7:$G$11,MATCH(C$5,源数据!$B$1:$G$1,0),0)

和上面区别就是查找的数据范围变为了:B7:G11。

 

同理在C系统中C6单元格输入:

=VLOOKUP($B6,源数据!$B$12:$G$16,MATCH(C$5,源数据!$B$1:$G$1,0),0)

和上面区别就是查找的数据范围变为了:B12:G16。

 

上面的问题:

(1)复制公式后还需要改公式的参数,不是直接复制,然后拖拽就能完成的

(2)A,B,C系统在不同sheet中的位置需要保持一致

 

参考:

https://www.cnblogs.com/janicemvidal/p/8608142.html

标签:11,10,13,4.1,系统,指标,实习,数据
From: https://www.cnblogs.com/djbwxh/p/16586413.html

相关文章

  • BOSC实习笔记
    2022.7.251.所谓-wall是一个编译选项,让编译器对你的代码提出尽可能多的警告 2022.7.261.cd不是程序,所以唯一没有没有manpage的指令2.管道A|B将A进程的标准输出连......
  • 实习-3
    需求:excel批量创建多个sheet表,并且指定命名首先在excel中sheet1表中把要命名的表名字写好:   问题:不合规范原因是新建表为自动默认创建3个sheet表,sheet1名称列中......
  • 实习1
    需求:表A:含有字段:,数据28152条 表B含有字段:问题账号,数据124条目的是筛选出问题账号所包含的系统名称,地市,账号,姓名,身份证,是否实名。 方法一:excelvlookup函数解决(1)找......