表格列数太多,找不到想要的数据。用这个思路快速浏览数据!

1

职场实例

小编遇到了这样一个 问题求助

表格列数太多,查看不方便,用什么方法,可以快速浏览到想要的数据呢?

我们来看一下具体的问题模型:

下图最左边的表格为 数据源 (注:实际工作场景 列数有100列 ,此例简化说明), 每两列为一组数据 第一行列标题为城市名称 第二行 副列标题 分别为 数量 金额 。我们想要在 I2单元格 通过切换不同的城市名称,将数据源中对应的城市列数据显示在 H4:I11区域内 方便我们查找浏览数据

最终的效果为下面动图所示:

2

问题解答

小编整理好了解决这个问题的思路 ,下面来介绍给大家,希望对大家的日常职场办公 有所帮助

首先我们在 I2单元格 建立数据 有效性下拉菜单 ,用于 切换城市

点击【数据】-【数据验证】,【允许】处选择【序列】,【来源】处输入: =$K$3:$K$5 ,最后点击【确定】即可。具体操作步骤如下图所示:

在H1单元格输入公式:

=MATCH(I2,1:1,0)

MATCH函数:

返回指定数值在指定区域中的位置。

=MATCH(找谁,在哪儿找,匹配方式)

本例中的 MATCH函数 的意义是:

I2单元格的城市名在第一行数据区域中的位置,比如当I2单元格显示“南京”时,在第一行列标题数据区域中的位置为3,即首次出现的 第3列 位置 处。

在I1单元格输入公式:

=H1+1

比如I2单元格显示城市“南京”时,在数据源中的数据为 第3列和第4列 。上一步中在H1单元格已经得到了列号3,所以在H1的基础上加1,得到列号4。

当我们在I2单元格切换不同的城市名称时, 就会在H1和I1单元格得到数据源中对应的两列列号。

在H4单元格输入公式:

=INDIRECT(ADDRESS(ROW(A1),H$1))

向右并向下填充公式即可。

ROW函数返回所选择的某一个单元格的行数。

=ROW(引用的单元格)

ADDRESS函数,根据行号和列号以文本的形式返回单元格的地址。

=ADDRESS(行号,列号,引用类型,引用样式,工作表名文本)

INDIRECT函数返回由文本字符串指定的引用。此函数立即对引用进行计算,并显示其内容。

ROW(A1)

得到A1单元格所在的行号为 1

ADDRESS(ROW(A1),H$1)

得到ADDRESS(1,5),即第1行与第5列交叉的位置单元格地址: E1

INDIRECT(ADDRESS(1,5))

得到INDIRECT(E1),即立即显示E1单元格的内容“ 上海 ”。

最后我们就实现了在I2单元格通过切换不同的城市名称,将数据源中对应的城市列数据显示在了H4:I11区域内。这就解决了今天的问题: 表格列数太多,查看不方便,用这种方法,可以快速浏览到想要的数据呢。 效果如下图所示:


(职场责编:拓荒牛 )