Office中国论坛/Access中国论坛

标题: 组合框+单选+定义名称制作动态图表 [打印本页]

作者: roych    时间: 2010-1-4 17:50
标题: 组合框+单选+定义名称制作动态图表
本帖最后由 roych 于 2012-9-1 00:22 编辑

下载之后,请在Chart里将组合框和单选框全部解开(之前为了方便排版已经组合了,右击/Ungroup)。
1、右击查看所连接的单元格以及单元格区域。
2、Ctr+F3看所引用的名称……
教程稍后再附上(最近比较忙)。
作者: 方漠    时间: 2010-1-5 09:17
谢谢分享.
作者: roych    时间: 2010-1-5 18:19
现在开始解释一下几个名称:
Week:
=OFFSET(Data!$A$3,Chart!$D$4,,IF(Chart!$D$4+Chart!$E$4>53,53-Chart!$D$4,Chart!$E$4),)
offset用于偏移量,目的在于获取所有周次(请解开组合后看相应组合框的“来源”)。
第一步:
以Data!A3为基准,向下偏移的行数则由Chart!$D$4来决定。——组合框连接单元格后,该单元格会因为你更改组合框的内容而返回相应数值(这个数值表示的是所选区域中的行数),列标不变(因此留空,如果输入其它数字则不再是Week42、week43之类了)。
第二步:确定区域的高度——也就是所选区域到底应该有多少个元素。这里用了一个if函数来处理:
IF(Chart!$D$4+Chart!$E$4>53,53-Chart!$D$4,Chart!$E$4)
这是什么意思呢?这里表示:如果——
Chart!$D$4+Chart!$E$4>53
元素个数为:53-Chart!$D$4
否则为:Chart!$E$4
可能有人会问:为什么要用53呢?答案很简单,因为一共有52周,那么从首尾相加即为53,也就是说如果第起始元素是1,那么最后一个元素就是52,如果是43,自然就只有53-43=10个元素了。
这样的目的在于:
起始值选了42,那么最后一个元素会自动更新为42、43……52而不是1、2、3……,换句话说,终止值一定不会低于起始值。这样就避免了图表出错。
……时间关系,下次续写上。
作者: wang1950317    时间: 2010-1-6 16:21
学习!期待续篇!!
作者: 方漠    时间: 2010-1-8 09:14
楼主辛苦了,请继续.
作者: roych    时间: 2010-1-8 18:16
接下来再解释一下Output:
=IF(Chart!$C$4=1,OFFSET(week,,8,),OFFSET(week,,9,))
表示的是如果Chart!$C$4的值为1时,将Week区域向右移动8列,否则将移动9列。
Chart!$C$4是单选框所链接的单元格,这样一来,那么就是选择重量(显示值为1),那么就得到重量的列,否则将得到订单数所在列了……时间关系,待续~~
作者: hans    时间: 2010-2-8 13:55
如果教程和过程动画结合就更好了
作者: wzh    时间: 2011-3-19 18:41
学习!期待续篇!!
作者: hope678    时间: 2011-6-27 11:06
学习学习
作者: joyark    时间: 2011-7-3 00:14
受益非浅
作者: roych    时间: 2012-9-1 00:23
本帖最后由 roych 于 2012-9-1 00:31 编辑
hans 发表于 2010-2-8 13:55
如果教程和过程动画结合就更好了


视频教程已经上传,请留意。
由于时隔两年多,再次“翻拍”,思维方式跟之前略有不同,因此做成的视频教程,旨在提供一种具体流程,告诉大家这个图表是如何一步步实现的。
至于里面所定义的名称,和原示例的名称都是不同的,请以原示例为准。
作者: st1988330    时间: 2013-5-12 22:09
DDDDDDDD
作者: xlb004    时间: 2015-3-22 09:45
rrrrrrrrrrrrrrrrr
作者: p51219    时间: 2016-4-9 23:17
支持原创
作者: p51219    时间: 2016-7-10 09:57
谢谢分享!
作者: p51218    时间: 2016-11-14 22:20
www.office-cn.net




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3