VBA用户控件
窗体相关
1.显示窗体
UserForm1.show [vbModeless]
vbModeless 可选参数,参数设定后,变成无模式窗体。窗体保持显示状态,仍可操作Excel文件。
UserForms.add("UserForm1").show
2.加载窗体
Load UserForm1
窗体保存在内存中,并不显示。窗体比较复杂时,可使用。
3.卸载窗体
Unload UserForm1
4.隐藏窗体
UserForm1.Hide
5.与显示和卸载窗体相关的事件
Initialize: 窗体初始化,发生在窗体加载和显示之前,但是,如果之前窗体隐藏状态,就不会发生此事件。
Activate: 显示窗体时发生的事件。
Deactivate: 窗体处于非活动状态时发生的事件,但是如果隐藏了窗体,就不会发生此事件。
QueryClose: 卸载窗体前发生事件。
Terminate: 卸载窗体后发生事件。
6.没有标题栏的窗体
Dim lngWindow as Long, lFrmHdl as Long
lFrmHdl = FindWindowA(vbNullSting, Me.Caption)
lngWindow = GetWindowLong(lFrmHdl, GWL_STYLE)
lngWindow = lngWindow And (Not WS_CAPTION)
Call SetWindowLong(lFrmHdl, GWL_STYLE, lngWindow)
Call DrawMenuBar(lFrmHdl)
GetWindowLong, SetWindowLong,DrawMenuBar和FindWindowA是4个API函数
列表控件
1.添加列表项目
ListBox1.AddItem "Column1"
ListBox1.AddItem "Column2"
ListBox1.RowSource = "Ranges"
Ranges: 制定某个单元格或区域
2.列表索引
ListBox1.ListIndex
3.复选项目
MultiSelect = 0,1,2
0: 单选
1: 空格键或单击鼠标,可以选中或取消列表框某个条目
2: Shift键多选
1或2的场合,ListBox1.Selected(n),ListBox1.List(n)取得选中项目。
-1: 未选中列表中项目
图片控件相关
1.图片的凸起效果
Image1.SpecialEffect = fmSpecialEffectRaised
取消凸起效果
Image1.SpecialEffect = fmSpecialEffectFlat
Shape相关
1.Shape文本框做成
Set A_Shape = Sheet1.Shapes.AddShape(msoShapeFlowchartDecision,left,top,10,30)
A_Shape.Name = "First"
A_Shape.TextFrame.Charaters.Text = "First"
2.Shape读取文本
Dim B_Shape as Shape
For each B_Shape in Sheet1.Shapes
' 方法1
sTemp = B_Shape.TextFrame.Characters.Text
' 方法2
sTemp = B_Shape.OLEFormat.Object.Text
Next
3.Shape写入文本
Sheet1.Shapes("Rectangle 1").Select
Selection.Characters.Text = "Second"
Next
VBA用户控件的更多相关文章
- C# 自定义控件VS用户控件
1 自定义控件与用户控件区别 WinForm中, 用户控件(User Control):继承自 UserControl,主要用于开发 Container 控件,Container控件可以添加其他Con ...
- .net 用户控件ascx.cs注册js脚本代码无效果
在.net web项目中碰到一个比较奇怪的问题,网上没找到解决方案,先自己mark一下 问题描述: 添加一个用户控件ascx,在后端.cs添加js注册脚本,执行后没有弹出框 注册脚本为: this.P ...
- winform 用户控件、 动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- C#窗体程序【用户控件-窗体】委托事件
这里的自定义控件是由普通控件组合而成的.希望事件响应代码推迟到使用自定义控件的窗体里写.步骤一:新建一个用户控件,放两个按钮,Tag分别是btn1,btn2.这两个按钮的共用单击事件处理代码如下: u ...
- WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日
好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修 ...
- wpf的UserControl用户控件怎么添加到Window窗体中
转载自 http://www.cnblogs.com/shuang121/archive/2013/01/09/2853591.html 我们来新建一个用户控件UserControl1.xaml &l ...
- winfrom获取用户控件里的控件对象
如何获取用户控件里的控件对象呢,其实思路也是很简单的, 比如有一个panel 用户控件 里面有许多的其他控件. 那么要找出一个Label控件怎么找呢,好的.现在我们就开始 首先,一个foreach循环 ...
- winform用户控件、动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- 039. asp.netWeb用户控件之七实现具有虚拟键盘的功能的用户控件
用户控件ascx代码: <%@ Control Language="C#" AutoEventWireup="true" CodeFile="K ...
随机推荐
- 过渡transitioin
一,什么是过渡(transition)? 1,transition 允许 CSS 元素的属性值在一定的时间区间内平滑地过渡. 2,可以在不使用 Flash 动画或 JavaScript 的情况下,在元 ...
- HUSTOJ搭建实录
要做一个MOOC平台,要求有在线编程功能,想偷个懒,于是用了HUSTOJ...... 系统:Ubuntu14.04 Kylin 步骤: 一.搭建服务器和相应环境 apache2: sudo apt-g ...
- Linux下apache+phppgadmin+postgresql安装配置
Linux下apache+phppgadmin+postgresql安装配置 操作系统:CentOS 安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstri ...
- 小知识:Python函数传递变长
先来实践一把: def f1(*args): print(args) f1(1,2,3,4) 得出:(1, 2, 3, 4) ----- 是一个元祖 Part 1: *args可以传递任意多的数,ar ...
- asp.net 查询好的数据后 排序显示在桌面上
select top 10 * ,row()_number over ( order by 字段 desc) as rownum from 表 row()_number;简单的说row_numbe ...
- JVM配置
1.堆设置 JVM中最大堆大小有三方面限制:操作系统位数(32-bt还是64-bit)限制:可用虚拟内存限制:系统的可用物理内存限制. java -Xmx3550m -Xms3550m -Xmn2g ...
- html css 编写规范
html 规范 一 语法 1.用两个空格带她tab, 2.嵌套的元素应该缩进一次,即两个空格是最好 3.属性定义,全部使用双引号,尽量避免单引号. 4.不要在自闭和标签尾部添加闭合标签. 5.可选得结 ...
- XidianOJ 1195 Industry of Orz Pandas
--正文 贪心 排序好慢慢找就好 #include <iostream> #include <cstring> #include <cstdio> #include ...
- [转]在WPF中区别TextBlock和Label
TextBlock和Label都是用来显示少量数据的.好多文章对Label存在的描述都是它允许使用"快速获取"."快速获取"就是允许你用Alt加上其它的按键快速 ...
- WPF开发经验
UpdateSourceTrigger 0.在一个项目中在用到绑定的时候一直有一个问题,虽然设置了Mode=TwoWay,界面的值修改了,但是后天绑定的值没有变化.最终发现了问题,在于UpdateSo ...