永发信息网

我在excel中用vb userform画了一个图表,怎样在excel中加个按钮,将它调用出来呢?

答案:6  悬赏:0  手机版
解决时间 2021-03-10 19:37
名字是userform1,求答案,本人菜鸟,请详说,最好直接把代码
最佳答案
你可以在加载项中添加你想要的按钮,具体代码如下:
Sub CreateToolBar()
Dim newTool As CommandBar
Dim i As Integer '如果发现有相同工具栏,删除该工具栏
On Error Resume Next
CommandBars("Custom Toolbar").Delete
On Error GoTo 0 '添加名称为“Custom Toolbar”的工具栏,并在工作表上方显示
Set newTool = CommandBars.Add(Name:="Custom Toolbar", Position:=msoBarTop)
With newTool
.Visible = True
With .Controls.Add(Type:=msoControlButton)
.Caption = "绘制图表"
.Style = msoButtonIconAndCaption
.TooltipText = "绘制图表"
.FaceId = 18
.OnAction = "drawChart"
End With

End With

End Sub
在VBA编辑器中插入模块,复制上诉代码后,运行一下,按钮就有了,运行的函数,就可以在加载项中添加绘制图表按钮,点击调用函数drawChart,可以改成你需要调用的函数
全部回答
给按钮加上代码:userform.show
Excel中的窗体控件功能非常强大,通过一个实例说明怎样用窗体控件快速构造出动态图表。 假设有一家公司要统计两种产品(产品X,产品Y)的销售情况,这两种产品的销售区域相同,不同的只是它们的销售量。按照常规的思路,我们可以为两种产品分别设计一个图表,但更专业的办法是只用一个图表,由用户选择要显示哪一批数据——即,通过单元按钮来选择图表要显示的数据。 为便于说明,我们需要一些示例数据。首先在A列输入地理区域,如图一,在B2和C2分别输入“产品X”和“产品Y”,在B3:C8区域输入销售数据。 一、提取数据 接下来的步骤是把某种产品的数据提取到工作表的另一个区域,以便创建图表。由于图表是基于提取出来的数据创建,而不是基于原始数据创建,我们将能够方便地切换提取哪一种产品的数据,也就是切换用来绘制图表的数据。 在A14单元输入=A3,把它复制到A15:A19。我们将用A11单元的值来控制要提取的是哪一种产品的数据(也就是控制图表要描述的是哪一批数据)。现在,在A11单元输入1。在B13单元输入公式=OFFSET(A2,0,$A$11),再把它复制到B14:B19。 OFFSET函数的作用是提取数据,它以指定的单元为参照,偏移指定的行、列数,返回新的单元引用。例如在本例中,参照单元是A2(OFFSET的第一个参数),第二个参数0表示行偏移量,即OFFSET返回的将是与参照单元同一行的值,第三个参数($A$11)表示列偏移量,在本例中OFFSET函数将检查A11单元的值(现在是1)并将它作为偏移量。
插入一个按钮,指定宏,宏的内容为usersform.show
按钮指定宏ccc,以下代码放到新建模块里面。 Sub ccc() UserForm1.Show End Sub
Excel中的窗体控件功能非常强大,通过一个实例说明怎样用窗体控件快速构造出动态图表。 假设有一家公司要统计两种产品(产品X,产品Y)的销售情况,这两种产品的销售区域相同,不同的只是它们的销售量。按照常规的思路,我们可以为两种产品分别设计一个图表,但更专业的办法是只用一个图表,由用户选择要显示哪一批数据——即,通过单元按钮来选择图表要显示的数据。 为便于说明,我们需要一些示例数据。首先在A列输入地理区域,如图一,在B2和C2分别输入“产品X”和“产品Y”,在B3:C8区域输入销售数据。 一、提取数据 接下来的步骤是把某种产品的数据提取到工作表的另一个区域,以便创建图表。由于图表是基于提取出来的数据创建,而不是基于原始数据创建,我们将能够方便地切换提取哪一种产品的数据,也就是切换用来绘制图表的数据。 在A14单元输入=A3,把它复制到A15:A19。我们将用A11单元的值来控制要提取的是哪一种产品的数据(也就是控制图表要描述的是哪一批数据)。现在,在A11单元输入1。在B13单元输入公式=OFFSET(A2,0,$A$11),再把它复制到B14:B19。 OFFSET函数的作用是提取数据,它以指定的单元为参照,偏移指定的行、列数,返回新的单元引用。例如在本例中,参照单元是A2(OFFSET的第一个参数),第二个参数0表示行偏移量,即OFFSET返回的将是与参照单元同一行的值,第三个参数($A$11)表示列偏移量,在本例中OFFSET函数将检查A11单元的值(现在是1)并将它作为偏移量。因此,OFFSET(A2,0,$A$11)函数的意义就是:找到同一行且从A2(B2)偏移一列的单元,返回该单元的值。 现在以A13:B19的数据为基础创建一个标准的柱形图:先选中A13:B19区域,选择菜单“插入”→“图表”,接受默认的图表类型“柱形图”,点击“完成”。检查一下:A13:B19和图表是否确实显示了产品X的数据;如果没有,检查你是否严格按照前面的操作步骤执行。把A11单元的内容改成2,检查A13:B19和图表都显示出了产品B的数据。 二、加入选项按钮 第一步是加入选项按钮来控制A11单元的值。选择菜单“视图”→“工具栏”→“窗体”(不要选择“控件工具箱”),点击工具栏上的“选项按钮”,再点击图表上方的空白位置。重复这个过程,把第二个选项按钮也放入图表。 右击第一个选项按钮,选择“设置控件格式”,然后选择“控制”,把“单元格链接”设置为A11单元,选中“已选择”,点击“确定”,如图二。 把第一个选项按钮的文字标签改成“产品X”,把第二个选项按钮的文字标签改成“产品Y”(设置第一个选项按钮的“控制”属性时,第二个选项按钮的属性也被自动设置)。点击第一个选项按钮(产品X)把A11单元的值设置为1,点击第二个选项按钮把A11单元的值设置为2。 点击一下图表上按钮之外的区域,然后依次点击两个选项按钮,看看图表内容是否根据当前选择的产品相应地改变。 按照同样的办法,一个图表能够轻松地显示出更多的数据。当然,当产品数量很多时,图表空间会被太多的选项按钮塞满,这时你可以改用另一种控件“组合框”,这样既能够控制一长列产品,又节约了空间。 另外,你还可以把A11单元和提取出来的数据(A13:B19)放到另一个工作表,隐藏实现动态图表的细节,突出动态图表和原始数据
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
恒新建设工程质量检测中心地址有知道的么?有
今年考上大专了去当兵,学历算什么
当太阳直射某地时,关于该地的叙述正确的是A.
儿童超身高火车上能补成人票吗
中央电视台讲各地美食的节目叫什么名字?说一
ubuntu 16.04 编译android 7.1需要降低gcc版
秦馍馍陕西小吃(金茂汇店)地址在哪,我要去那
驾驶证科目一考试成绩单丢了怎么办
什么品牌的女装裤子有3尺4的吗?
OPPO的原装充电器多少钱?
芒给尔特乌拉地址在什么地方,想过去办事
一、右图是市实验中学教职工学历统计图,看统
有个赶考的书生到旅店投宿,拿出十两银子,挑
找一首粤语女声歌曲,旋律是“哼哼哼哼哼 哼
大妈学车 女的叫什么
推荐资讯
meunier曼妮雅高端美容皮肤管理中心我想知道
啊亲爱的姑娘什么歌
梦见青苗遭牛踏践什么意思?
联想110s怎么u盘启动
请问黄真伊留世的6首诗是哪6首?
么少一撇是什么字
库克著的《美语发音秘诀》 新东方翻译的版本p
广汽本田汽车欣雅特特约销售服务店怎么去啊,
绍兴e网——绍兴白果小区属什么街道?
一本Bl 小说,小受是被收养的,他的师父变成
床头朝西南方向好不好
马卡龙在哪里啊,我有事要去这个地方
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?