全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 学习笔记1.0
1920 0
2014-04-02

数据: 不同城市每月的平均温度


目的: 通过选择上图右侧控件中的城市,得到一行对应的每月平均温度值,并以此作图(如下图)


思路: 1. 用OFFSET实现数据的动态选择;2. 命名这个OFFSET


命名City返回控件中选择的城市,命名Temp返回控件所选城市对应的12个月的每月平均气温。Temp_Alt是得到12个月每月气温的另一种方法,稍后可以谈到两者的区别。

=============================================================================

两种命名方法

Temp: 此命名返回的是一个1行12列的range。如果在任意单元格里输入"=Temp"得到的结果是"#VALUE!"。如下图在单元格S18里输入"=Temp"。

理论上一个单元格是不能直接返回一个包含两个或更多单元格的range的,所以得到的只能是一个error message。


只有一种情况除外:在OFFSET返回range对应的列中,输入"=Temp"。如下图。在原始数据里,当控件选择北京市的时候,Temp对应的OFFSET返回的range是$C$4:$N$4。

我在14行单独列出选中的城市及对应温度。当我把数据起止列限定在C:N列时,在$C$14:$N$14里统一输入"=Temp"可以自动得到原始数据里对应列的数据的。


再回看任意列输入"=Temp"的情况,如上上图中,S18输入Temp,得到的就只能是"#VALUE!"

另外,如果Temp设定的使用范围是Workbook,那么在同一个workbook的其他表中,也适用刚才讨论到的规则。Sheet1中C:N列的数据,也能在Sheet2中的C:N列用Temp实现12列数值的自动返回。

Temp_Alt: 此命名返回单一单元格,所以不同于Temp,在任意单元格中输入"=Temp_Alt"都不会返回error message,只要注意修改OFFSET第三个参数的值(横向右移长度)就可以了。



=============================================================================

参考文件: 控件,offset与name manager的简单协同使用
=============================================================================请问有没有大神能够帮忙解释一下Temp那种方法为什么能够让一个单元格返回一个range中对应的单元格?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群