1、数据1数据2数据2数据12A2668A68数据2B4520B20C5699C99原理:利用CHOOSE函数和I单元格数值的变化来实现动态,如果当I=1时CHOOSE函数选择B列的数值,如果等于2CHOOSE函数选择C列的数值。而I1值的变化有事根据窗体控件组合框来实现的。实际操作:大家在D列添加一个数据3的,然后更改F1的公式为=CHOOSE(B1,C1,D1)然后下拉,把控件的数据区域更改为H1:H3看看效果。制作步骤:A1:C4为原始数据 1 复制A2:A4到E2:E4。2 调出窗体控件,画好一个组合框,右键单击组合框设置控件格式-控制,数据源区域和单元格连接分别填入$H$1:$H$2和$
2、I$1 3 在F1填入公式=CHOOSE($I$1,B1,C1)4 以E1:F4为数据源创建图表。5 把窗体控件移动到图表上去,然后按住Ctrl键依次点击图表和控件右键组合。361153数据ABC数据2数据1数据2数据3数据13A2668123数据2B452033数据3C569988 y=OFFSET(定义名称1!$A$2:$A$4,0,定义名称1!$G$1)原理:利用OFFSET的循环,以A2:A4为基准,向右循环,循环的规律根据G1来定,如果G11的时候,就循环引用之右边第一个数据区域也就是B2:B4,如果G2=2的时候就循环之右边第二列数据区域,也就是C2:C4。这里注意一点,就是这个循
3、环不是叠加循环,意思就是它每次循环到的区域只有一列数据,后面我们有个滚动条的动态图表,它那个循环就是叠加循环意思就是如果=1就循环引用第一列数据,如果=2就循环引用1,2列数据。所以说这两种循环千万不要弄混了。制作步骤:原始表格为A1:D4 1 在F列输入原始表格中的列表题,然后在工作表中添加一个窗体组合框,设置数据源区域为F:F3,单元格连接为G1。2 定义一个名称y=OFFSET(动态图表-定义名称!$A$2:$A$4,0,动态图表-定义名称!$G$1)3 选取任意单元格,通过图表向导创建三维饼图,在图表向导步骤2的对话框中切换到系列选项卡,添加一个系列,在值中输入刚才定义的名称定义名称1
4、!y,在分类X轴标志中选取单元格A2:A4。然后单击确定。4 把第一步中画的组合框移动到图表中去,并进行组合。501436ABC数据3原理:利用OFFSET的循环,以A2:A4为基准,向右循环,循环的规律根据G1来定,如果G11的时候,就循环引用之右边第一个数据区域也就是B2:B4,如果G2=2的时候就循环之右边第二列数据区域,也就是C2:C4。这里注意一点,就是这个循环不是叠加循环,意思就是它每次循环到的区域只有一列数据,后面我们有个滚动条的动态图表,它那个循环就是叠加循环意思就是如果=1就循环引用第一列数据,如果=2就循环引用1,2列数据。所以说这两种循环 1 在F列输入原始表格中的列表题
5、,然后在工作表中添加一个窗体组合框,设置数据源 2 定义一个名称y=OFFSET(动态图表-定义名称!$A$2:$A$4,0,动态图表-定义名称!$G$1)3 选取任意单元格,通过图表向导创建三维饼图,在图表向导步骤2的对话框中切换到系列选项卡,添加一个系列,在值中输入刚才定义的名称定义名称1!y,在分类X轴标志日期加工件数1月1日121月2日131月3日121月4日111月5日131月6日151月7日131月8日151月9日16 在日期和加工件数后面添加数据后图表自动更新定义了两个名称件数=OFFSET(定义名称2!$B$2,COUNTA(定义名称2!$B:$B)-1)日期=OFFSET(定
6、义名称2!$A$2,COUNTA(定义名称2!$A:$A)-1)先创建一个空白图表,然后添加一个新的系列,在值里面输入=件数在分类X轴标志里面输入=日期 原理:利用OFFSET创建一个循环,上面公式的意思是:计算A/B列中除了列标题以外的非空单元格的数量,然后以A4/B4单元格(首个数据单元格)为基准开始定位,定位的行数等于刚才计算出来的数量。所以当你在后面添加数据的时候,非空单元的数量又多了一个,等于就是多了一个数据,所以图表就自动更新了。制作步骤:1 先定义两个名称件数和日期。公式就是上面的公式。2 通过图表向导创建图表,选取折线图下一步系列添加一个新的系列,在名称里面输入刀具加工件数图,
7、值里面输入=定义名称2!件数,分类X轴标志里面输入=定义名称2!日期。刀具加工件数图1月1日1月2日1月3日1月4日1月5日1月6日1月7日1月8日1月9日024681012141618=OFFSET(定义名称2!$B$2,COUNTA(定义名称2!$B:$B)-1)=OFFSET(定义名称2!$A$2,COUNTA(定义名称2!$A:$A)-1)先创建一个空白图表,然后添加一个新的系列,在值里面输入=件数 原理:利用OFFSET创建一个循环,上面公式的意思是:计算A/B列中除了列标题以外的非空单元格的数量,然后以A4/B4单元格(首个数据单元格)为基准开始定位,定位的行数等于刚才计算出来的数
8、量。所以当你在后面添加数据的时候,非空单元的数量又多了一个,等于就 2 通过图表向导创建图表,选取折线图下一步系列添加一个新的系列,在名称里面输入刀具加工件数图,值里面输入=定义名称2!管 理 费 用 按 季 分 析TRUE2005年工资职工福利费差旅费办公费电话费业务招待费折旧费三金笫一季度25.65.24.77132213.830.1笫二季度5110.7821265827.228.2笫三季度74.31615.345429940.634.5笫四季度74.31615.4454310040.737.15原理:利用IF函数,如果某单位格为TRUE或者FALSE的时候显示某值,否则又为某值。因为选项
9、控件,如果选中它,它所连接的单元格就为TRUE,否则就为FALSE。制作步骤:1 定义以下几个名称dierjidu=IF(选项控件做动态图表!$J$2=TRUE,选项控件做动态图表!$B$6:$P$6,kong)disanjidu=IF(选项控件做动态图表!$K$2=TRUE,选项控件做动态图表!$B$7:$P$7,kong)disijidu=IF(选项控件做动态图表!$L$2=TRUE,选项控件做动态图表!$B$8:$P$8,kong)diyijidu=IF(选项控件做动态图表!$I$2=TRUE,选项控件做动态图表!$B$5:$P$5,kong)kong=选项控件做动态图表!$A$10:$
10、P$10 kong这个名称的作用就是,当选项按钮连接的单元格为FALSE时,显示这个值。这里说一点,有人会说为什么不直接应用这个呢,如果用这个的话,那么当选项按钮连接的单元格为FALSE时,图表所显示的值为不可用,图表中不支持这种值显示。2 选取任意单元格,通过图表向导创建图表,在第二步时,切换到系列选项卡,添加四个系列,名称分别为第一季度,第二季度,第三季度,第四季度,值分别为diyijidu,dierjidu,disanjidu,disijidu,分类X轴标志都为B4:P4。3 调出窗体控件,创立四个选项控件,更改其名,分别为:第一季度,第二季度,第三季度,第四季度。单元格连接分别为:I2
11、,J2,K2,L2。现在你在依次去勾选几个控件和取消几个控件看看效果吧。工资职工福利费差旅费办公费电话费业务招待费折旧费三金劳动保险费税金咨询费用车费水电费工伤保险其他020406080100120第一季度第二季度第三季度第四季度第一季度第二季度第三季度第四季度TRUETRUETRUE 劳动保险费 税金咨询费用车费水电费工伤保险其他22171219232070601813584025208919157865306090191778664060原理:利用IF函数,如果某单位格为TRUE或者FALSE的时候显示某值,否则又为某值。因为选项控件,如果选中它,它所=IF(选项控件做动态图表!$J$2=
12、TRUE,选项控件做动态图表!$B$6:$P$6,kong)=IF(选项控件做动态图表!$K$2=TRUE,选项控件做动态图表!$B$7:$P$7,kong)=IF(选项控件做动态图表!$L$2=TRUE,选项控件做动态图表!$B$8:$P$8,kong)=IF(选项控件做动态图表!$I$2=TRUE,选项控件做动态图表!$B$5:$P$5,kong)kong这个名称的作用就是,当选项按钮连接的单元格为FALSE时,显示这个值。这里说一点,有人会说为什么不直接应用这个呢,如果用这个的话,那么当选项按钮连接的单元格为FALSE时,图表所显示的值为不可用,图表中不支持这种2 选取任意单元格,通过图
13、表向导创建图表,在第二步时,切换到系列选项卡,添加四个系列,名称分别为第一季度,第二季度,第三季度,第四季度,值分别为diyijidu,dierjidu,disanjidu,disijidu,分类X轴标志都为B4:P4。3 调出窗体控件,创立四个选项控件,更改其名,分别为:第一季度,第二季度,第三季度,第四季度。单元格连接分别工资职工福利费差旅费办公费电话费业务招待费折旧费三金劳动保险费税金咨询费用车费水电费工伤保险其他020406080100120第一季度第二季度第三季度第四季度第一季度第二季度第三季度第四季度管 理 费 用 按 季 分 析2005年工资职工福利费差旅费办公费电话费业务招待费
14、折旧费三金笫一季度25.65.24.70.71.32.213.8笫二季度5110.782.12.65.827.2笫三季度74.31615.34.54.29.940.6笫四季度74.31615.44.54.31040.737.15笫四季度工资74.3职工福利费16差旅费15.4办公费4.5电话费4.3业务招待费10折旧费40.7三金37.15 劳动保险费9 税金1.9咨询费0用车费7.8水电费6.6工伤保险40其他0.6原理:利用查找函数VLOOKUP来根据一个变化的查询条件,从而来达到,当查询的条件变化时,数据也跟着变化所以也就促成了图表数据源的动态。先来看下函数的意思:以B11单元格的函数为
15、例=VLOOKUP($B$10,$4:$8,ROW()-9,0),$B$10这个为查询条件,查询的区域为第4行到第8行,当查询到第9行的时候,数据返回0值,大家可以看看把公式在下拉之B26或者跟后面,可以看到后面显示的全部为0。好我们来看下公式怎么查找的,假如B10为第四季度,那么查找的条件就是第四季度然后横向查找出A列相对应的值。操作步骤:1 复制B4:P4,选中A11单元格,右键选择项粘贴转置 2 选中B10单元格,菜单栏数据数据有效性序列来源选择A5:A8。3 在B11中输入公式=VLOOKUP($B$10,$4:$8,ROW()-9,0),然后下拉之B25 4 以A10:B25为数据源
16、创建一个柱型图。5 调出控件工具箱,画一个组合框出来 6 右键单击组合框,选择属性。7 找到ListFillrang和LinkedCell这两项分别填入hlookup函数做动态图表!A5:A8和hlookup函数 做动态图表!B10填写完毕后关闭属性对话框。8 把组合框移动到图表上方中间位置,然后按住Ctrl键分别点击组合框和图表,右键组合。9 退出组合框控件的设计模式。OK这个动态图表做成了。笫四季工职工福利差旅办公电话业务招待折旧三劳动保险税咨询用车水电工伤保其020406080笫四季度 劳动保险费 税金咨询费用车费水电费工伤保险其他2.21.92.30.71.85.840.28.91.97.86.50.691.97.86.6400.6原理:利用查找函数VLOOKUP来根据一个变化的查询条件,从而来达到,当查询的条件变化时,数据也跟着变化先来看下函数的意思:以B11单元格的函数为例=VLOOKUP($B$10,$4:$8,ROW()-9,0),$B$10这个为查询条件,查询的区域为第4行到第8行,当查询到第9行的时候,数据返回0值,大家可以看看把公式在下拉之B26或者跟后面,可以看