自定义表格控件使用说明

合集下载

Excel表单控件和ActiveX控件使用详解

Excel表单控件和ActiveX控件使用详解

在VBA编程中Excel提供了两种控件,表单空控件和ActiveX控件,相信好多非开发的专业人员都搞不清楚两个的区别,本文就以Excel2016版本为例,和大家一起讨论下这两种控件的区别和用法,大家一起相互学习、交流沟通。

1两种控件获取的位置如果使用控件,需要将Excel VBA“开发工具”加载到菜单栏,具体操作如下:a)点击“文件菜单”b)在打开的界面中点击“选项”菜单c)在打开的Excel选项界面中点击“自定义功能区”,并按照下图勾选“开发工具”,点击“确定”按钮就可以,将开发工具显示在Excel的菜单栏d)在Excel主界面中点击“开发工具”,打开VBA开发相关菜单功能,OK,马上我们的正主就要到了。

e)OK,在VBA开发工具相关菜单中,点击“插入”按钮,就可以看到“表单控件”和“ActiveX控件”了,下面我们就来一探究竟,这两种差距的主要区别2两种控件的主要区别和优缺点MouseUp无属性可以修改可修改一系列相关属性,在VBA开发的过程中可以控制。

是,通过DrawingObjects或者通是,可以通过Name以对象Box 3").Value是,可以通过控件来控制图表通过以上比较,发现ActiveX控件更加适合熟悉VBA编程的专业人士使用,具有丰富的响应事件。

但是窗体控件也具有其先天的优势,可以在不编程的情况下和关联单元格,并可以在Chart图标中添加窗体控件。

所以,两种控件的使用,需要根据具体使用场景进行有效的选择。

3如何使用两种控件3.1使用ActiveX控件控制多条件组合动态筛选3.1.1准备样例数据3.1.1插入ActiveX控件3.1.2为checkbox添加单击事件,动态控制筛选Private Sub CheckBox1_Click()Dim criterial2 As StringDim myRange As RangeDim flag As Booleanflag = Sheet1.CheckBox1.ValueSet myRange = Range("D4:D11")'获取要筛选的值criterial2 = LTrim(RTrim(Range("D2").Value))If criterial2 <> "" And flag = True Then'myRange.AutoFilter field:=2, Criteria1:=criterial2, VisibleDropDown:=FalsemyRange.AutoFilter Field:=2, Criteria1:=criterial2ElsemyRange.AutoFilter Field:=2End IfEnd SubPrivate Sub CheckBox2_Click()Dim criterial3 As StringDim myRange As RangeDim flag As Booleanflag = Sheet1.CheckBox2.ValueSet myRange = Range("E4:E11")'获取要筛选的值criterial3 = LTrim(RTrim(Range("F2").Value))If criterial3 <> "" And flag = True Then' VisibleDropDown:=False 使用了这个参数,筛选就不出现下拉箭头'myRange.AutoFilter field:=3, Criteria1:=criterial3, VisibleDropDown:=FalsemyRange.AutoFilter Field:=3, Criteria1:=criterial3ElsemyRange.AutoFilter Field:=3End IfEnd Sub3.1.3AutoFilter函数使用说明AutoFilter:使用“自动筛选”筛选一个列表。

MSFlexGrid表格控件详细说明

MSFlexGrid表格控件详细说明

MSFlexGrid 表格控件详细说明控件名:Microsoft FlexGrid Control文件:sys\msflxgrd.ocx============================= 属性=========================================■AllowBigSelection 属性在行头或者列头上单击时,(是否)可以使得整个行或者列都被选中。

■AllowUserResizing 属性 (是否)可以用鼠标来对 MSFlexGrid 控件中行和列的大小进行重新调整。

-------------------------------------■Appearance 属性设计时的绘图风格■BorderStyle 属性边框样式-------------------------------------■BackColorBkg 属性 '表格多余部分颜色■BackColorFixed 属性 '表格头部分颜色■BackColorSel属性 '选中部分颜色■BackColor属性 '所有未确定单元的颜色■CellBackColor 和 CellForeColor 属性返回或设置单个单元或者一群单元的背景和前景颜色。

-------------------------------------■ForeColor、ForeColorFixed 以及 ForeColorSel 属性各部分上文本的颜色。

■TextStyle 和 TextStyleFixed[= style ] 属性返回或设置指定单元或者一群单元上文本的三维样式。

----------------------------------------■FixedAlignment (index)= [value] 属性列号,设置值flexAlignLeftTop 0 左顶部flexAlignLeftCenter 1 左中flexAlignLeftBottom 2 左底部flexAlignCenterTop 3 中顶部flexAlignCenterCenter 4 中中flexAlignCenterBottom 5 中底部flexAlignRightTop 6 右顶部flexAlignRightCenter 7 右中flexAlignRightBottom 8 右底部■ColAlignment(number) 属性 [= value ] 返回或设置某一列中数据的对齐方式number=列号,或者 -1(一次性地对所有列进行设置)。

PC-DMIS表格控件使用说明

PC-DMIS表格控件使用说明

表格控件用于向模版中插入一个可自定义行和列的表格。

区别于一般的表格,该控件的功能更为完善。

用户可以运用表达式,对独立的单元格、行和列进行编程以显示特定信息。

参见“表达式”。

用户可以重新定义或是移动对象到一个新的位置。

当重新定义对象的大小时,软件同时定义行和列的尺寸来适应对象的新尺寸。

使用表格属性对话框选择已经插入的表格控件,双击鼠标左键以激活控件,随后点击其中的一个单元格,并单击鼠标右键,此时会显示表格属性对话框。

这个对话框提供更多的功能允许您根据需要定义删格单元。

表格属性对话框表格属性对话框单元类型可以设置需要插入特定单元中的内容.选项如下:▪文本可以在单元表达式框中定义垂直文本或表达式命令。

单元中显示计算表达式或垂直文本.▪图象向单元中出入图象文件。

可以通过选择按钮进行选择.▪表达式- 允许用户在单元格中输入表达式。

当使用该模版来显示实际报告数据时,Datapage+将计算该表达式的结果。

使用单元格表达式列表获取可用的表达式。

选择- 用于选择一个图片,该图片将显示在选定的单元格中。

如果用户在单元格类型中选择图片选项,则选择按钮为可用状态.单元格表达式—允许用户从列表中选择希望使用的表达式。

当单元格类型被设置为表达式时,将使用选定的表达式。

参见“表达式"章节获得更多关于表达式的信息。

单元格高度和宽度,这些框允许你定义单元格的高度和宽度. 注意如果更改了高度,行里所有单元格就更改了.如果更改了宽度,列中所有的单元格也就更改了. 如果用户选择多个单元格,平均宽度和平均高度按钮可以平均分配选定单元格的宽度和高度。

单元格对齐方式- 这些按钮用于设定单元格中内容的对齐方式,如水平对齐和垂直对齐。

如果是水平的,可将文本放置到单元的左边、中心或右边。

如果是垂直的,可将文本放置到顶部、中部或底部。

需要购买本软件或咨询软件更多交流信息请联系pc-software#qq。

com(#改成@)水平对齐按钮▪左对齐- 将文本对齐到单元格左端。

VB表格控件使用教程

VB表格控件使用教程
1、添加控件
右键
1、添加控件
左键拖放绘制表格区域
表格右键弹出菜单功能
2、控件使用
(1)数据输入:粘贴,键盘输入,文件导入均可
记事本内容复制
Excel内容复制 文件数据导入
2、控件使用
(2)公式计算:可进行数值计算和字符处理,数据修改后同步更新计算
2、控使用
(3)编程处理单元格:
3、接口函数
提供下列接口函数以便自行定制右键弹出菜单功能或主菜单功能及程序中 调用,同时提供单元格操作函数。
4、定制菜单示例
(1)右键弹出菜单:
接口函数调用示例
4、定制菜单示例
(2)主菜单:
接口函数调用示例

Excel高级技巧使用VBA宏和用户界面实现自定义功能和操作

Excel高级技巧使用VBA宏和用户界面实现自定义功能和操作

Excel高级技巧使用VBA宏和用户界面实现自定义功能和操作Excel作为一款常用的电子表格软件,具备强大的数据处理和分析功能。

除了基本的公式计算和数据整理外,还支持使用VBA宏和用户界面来实现自定义功能和操作。

本文将介绍Excel中的高级技巧,重点是利用VBA宏和用户界面进行操作和功能的定制。

一、VBA宏和用户界面简介在Excel中,VBA(Visual Basic for Applications)是一种基于Visual Basic的编程语言,可以实现自动化和自定义功能。

用户界面则是指通过图形化界面来操作和展示这些功能,比如自定义的按钮、菜单和对话框。

二、使用VBA宏自动化重复性操作VBA宏可以记录和重放用户在Excel中的操作,将一系列操作自动化执行。

下面以一个实例来说明如何使用VBA宏。

假设我们需要每次将一列数据按特定规则进行格式化,比如将所有的数据转换成大写并添加前缀"DATA_"。

首先,我们可以录制一个VBA宏来实现这个功能:1. 打开Excel并选中需要进行格式化的列;2. 点击"开发工具"选项卡,点击"录制宏"按钮;3. 输入宏的名称和描述,点击"确定";4. 在弹出的录制器窗口中,进行转换为大写和添加前缀的操作;5. 点击"结束录制"按钮。

录制完成后,我们可以通过快捷键或者宏列表来运行这个VBA宏,从而实现自动化重复性操作。

三、自定义功能和操作的实现除了录制宏外,我们还可以使用VBA编写代码来实现更加定制化的功能和操作。

下面以一个实例来说明如何通过VBA宏实现自定义功能。

假设我们需要在Excel中添加一个自定义的按钮,点击按钮后可以将选中的单元格中的数字相加并显示结果。

首先,我们可以按以下步骤进行操作:1. 打开Excel并进入"开发工具"选项卡,点击"插入"按钮;2. 在弹出的"插入控件"对话框中,选择"ActiveX 控件"中的按钮控件;3. 将按钮控件绘制在工作表上;4. 右键点击按钮控件,选择"属性",修改按钮的名称为"btnAdd";5. 双击按钮控件,进入VBA编辑器;6. 在编辑器中输入以下VBA代码实现相加操作:```Private Sub btnAdd_Click()Dim rng As RangeDim cell As RangeDim sum As DoubleSet rng = Selectionsum = 0For Each cell In rngIf IsNumeric(cell.Value) Thensum = sum + cell.ValueEnd IfNext cellMsgBox "Sum: " & sumEnd Sub```代码解释:- 首先,定义了一个变量`rng`,用于存储用户选中的单元格范围;- 然后,定义了一个变量`sum`,用于存储相加的结果;- 接下来,使用循环遍历选中的每个单元格,判断其是否为数字,若是则进行相加操作;- 最后,通过`MsgBox`函数弹出消息框,显示结果。

excel窗体控件使用方法

excel窗体控件使用方法

excel窗体控件使用方法Excel窗体控件使用方法Excel窗体控件是一种可以在Excel表格中嵌入交互式控件的工具。

这些控件可以让用户通过填写表格来输入数据,或者通过点击按钮来执行特定的操作。

在本文中,我们将介绍如何使用Excel窗体控件。

第一步:打开开发者选项我们需要打开Excel的开发者选项。

在Excel中,选择文件菜单,然后选择选项。

在Excel选项窗口中,选择自定义功能区,然后勾选开发者选项。

点击确定按钮,Excel将为我们显示开发者选项卡。

第二步:插入窗体控件在开发者选项卡中,我们可以找到插入控件组。

选择插入控件组中的表单控件,然后选择我们需要插入的控件类型。

例如,我们可以选择插入文本框、下拉框、按钮等。

第三步:设置控件属性一旦我们插入了一个控件,我们需要设置它的属性。

右键单击控件,然后选择属性。

在属性窗口中,我们可以设置控件的名称、提示信息、默认值等。

第四步:编写VBA代码有些控件需要编写VBA代码才能实现特定的功能。

例如,我们可以在按钮控件上编写VBA代码,使其在点击时执行特定的操作。

要编写VBA代码,我们可以在开发者选项卡中选择Visual Basic,然后在Visual Basic编辑器中编写代码。

第五步:测试控件我们需要测试我们的控件是否按照预期工作。

我们可以通过填写表格、点击按钮等方式来测试控件。

如果控件没有按照预期工作,我们可以回到前面的步骤中检查设置和编码。

总结以上就是使用Excel窗体控件的基本步骤。

通过使用窗体控件,我们可以在Excel表格中添加交互式控件,从而使我们的表格更加灵活和易于使用。

Excel中插入表单控件的操作方法介绍

Excel中插入表单控件的操作方法介绍
补充:存在较多函数无法直接作用于图片、图表等,通常较多使用给函数定义名称来使得图片引用的函数发生变化。
Excel中插入表单控件的操作方法介绍
一、表单控件的说明
表单控件位于开发工具—插入项下,有12种,分别为按钮、组合框、复选框、数值调节钮、列表框、选项按钮、分组框、标签、滚动条、文本域、组合列表编辑框、组合下拉;
二、表达控件使用介绍
1、按钮,主要用于给VBA代码提供方便快捷的运行方式。编写好VBA代码后,插入按钮,将按钮指定到需要运行的VBA名称之后,单击即可运行代码。
操作:主要是操作组合框的控制项,数据源区域为下拉选项的数据源,单元格链接为生成数值序号的区域。
3、复选框,可以制作出打“√”的小方框,打“√”时生成结果为“Ture”,不打“√”生产结果为“FALSE”,插入的各个复选框之间相互无关系,因此称为复选框。
4、单选框(选项按钮)。(1)正常所有插入的单元框只能选择一个,同时所有的单元框公用一个单元格链接,生产的结果为单选框的顺序数值;
7、分组框,主要用于对单选框等进行分组,分组后单选框可以避免整体链接。结合“页面布局—组合”可以将多个表单控件以组合的形式移动、编辑等,无单元格链接。
8、滚动条。可以通过拖动滚动条调节调节数据值,可以使用该功能结合Inderect函数、定义名称等动态画图表。
补充:切换图片小技巧,在Excel中插入图片,选中图片后在编辑栏输入“=A1”,即可以图片形式展现A1单元格目前的显示内容。
操作:(1)可以设置控件格式;(2)可以指定VBA代码(指定宏),指定之后可以单击运行。
2、组合框,可以制作出下拉列表,同时可根据下拉列表所选的数据位于数据源中的位置生成数值序号。
备注:大小、属性、可选文字均为调整表单控件的格式选项。

EXCEL控件使用

EXCEL控件使用

EXCEL控件使用Excel控件是指可以在程序中嵌入使用Microsoft Excel功能的控件。

通过使用Excel控件,开发者可以在自己的应用程序中实现类似Excel的电子表格功能,从而提供更强大的数据处理和分析能力。

本文将介绍Excel控件的使用方法和常见应用场景。

一、Excel控件的使用方法1. 引入Excel控件:在使用Excel控件之前,首先需要在开发环境中引入Excel控件库。

具体的引入方法可以根据不同的开发平台和语言而有所不同,一般来说,可以通过添加引用或导入库文件的方式进行引入。

2. 创建Excel控件:在程序中创建Excel控件对象,并进行初始化设置。

可以设置控件的大小、位置、样式等,并为控件绑定相关的事件处理程序。

3. 打开Excel文件:使用Excel控件可以打开现有的Excel文件或创建新的Excel文件。

通过控件提供的接口,可以打开指定路径下的Excel文件,并在控件中显示该文件的内容。

5. 数据分析:Excel控件可以提供丰富的数据分析功能,包括排序、筛选、图表等操作。

可以对Excel文件中的数据进行排序,或者使用筛选功能对数据进行过滤和查找。

还可以创建各种类型的图表,以便更直观地展示数据。

6. 保存和关闭:在对Excel文件进行操作后,可以通过控件提供的接口将修改后的文件保存到指定路径。

同时,还可以关闭Excel文件,释放资源和内存。

二、Excel控件的应用场景1. 数据导入和导出:Excel控件可以帮助用户将大量的数据导入到Excel文件中,或将Excel文件中的数据导出到其他格式。

这在需要处理大量数据的情况下非常有用,特别是对于需要进行数据清洗、整理和分析的任务。

2. 数据报表和图表:Excel控件提供了丰富的图表功能,可以帮助用户创建各种类型的图表,如柱状图、饼图、折线图等。

通过图表,可以更直观地展示数据的趋势和关系,提高数据分析的效果。

3. 数据计算和分析:Excel控件支持复杂的数据计算和分析功能,如多条件排序、数据筛选、数据透视表等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文档用于在U9里插入表格,并在表格中动态生成多种控件,支持单选、多选、文本框和多控件混杂。

原理:先用vs开发自定义服务器控件,然后在UBF里放置label控件进行定位,通过代码new自定义控件,再替换掉label。

1.实现效果预览2.服务器控件开发可以在百度上搜索服务器控件开发,代码可以参照以下附件UFIDA.U9.Cust.SGS.PERLAII.PUB.rar如果不需要修改控件,可跳过该本环节。

3.放置Label控件从控件列表拖一个label到页面,并设置大小。

注意:控件的最大长宽,取决于label的长宽。

4.动态生成代码并替换UBF构造并自动生成解决方案,如下:引入控件,选择UFIDA.U9.Cust.SGS.PERLAII.PUB.ReviewSheet.dll,点击确认即可。

在SubjectUIFormWebPartCodeBehindExtend.cs的函数AfterCreateChildControls()里进行控件新增和替换。

ReviewSheet rs;rs = new ReviewSheet();//构造标题列表List<string> headlist = new List<string>();headlist.Add("Item to be checked");headlist.Add ("Evaluation");headlist.Add("Reviewer");headlist.Add("Certifier Remarks");headlist.Add("Certifier");headlist.Add("Guideline");//控件头赋值rs.headlist = headlist;//构造行哈希表,表key为列号,value为控件集合Hashtable hshTable = new Hashtable();//第一行第一列,文本List<WebControl> controllist1 = new List<WebControl>();Label lb1 = new Label();lb1.Text = "Offer/application";controllist1.Add(lb1);hshTable.Add(0, controllist1);//第一行第二列,输入框textboxList<WebControl> controllist2 = new List<WebControl>();Label lb2 = new Label();lb2.Text = "in project folder and in PERLA ?";controllist2.Add(lb2);TextBox textbox1 = new TextBox();textbox1.ID = "textbox1";controllist2.Add(textbox1);hshTable.Add(1, controllist2);//第一行第三列,文本和单选框,要设置id,text,groupnameList<WebControl> controllist3 = new List<WebControl>();Label lb3 = new Label();lb3.Text = "latest ed./amd. applied:";controllist3.Add(lb3);RadioButton rbY = new RadioButton();rbY.ID = "RadioButtonY";rbY.Text = "YES";rbY.GroupName = "RBGroup1";controllist3.Add(rbY);RadioButton rbN = new RadioButton();rbN.ID = "RadioButtonN";rbN.Text = "NO";rbN.GroupName = "RBGroup1";controllist3.Add(rbN);hshTable.Add(2, controllist3);//第一行第四列,文本和多选框混合,设置id,textList<WebControl> controllist4 = new List<WebControl>();Label lb4 = new Label();lb4.Text = "Evidence: ";controllist4.Add(lb4);CheckBox checkbox1 = new CheckBox();checkbox1.ID = "checkbox1";checkbox1.Text = "signature";controllist4.Add(checkbox1);CheckBox checkbox2 = new CheckBox();checkbox2.ID = "checkbox2";checkbox2.Text = "email";controllist4.Add(checkbox2);CheckBox checkbox3 = new CheckBox();checkbox3.ID = "checkbox3";checkbox3.Text = "in PERLA";controllist4.Add(checkbox3);hshTable.Add(3, controllist4);//第一行第五列,单选和本文输入框混合,当选择rbother时,textbox才允许输入List<WebControl> controllist5 = new List<WebControl>();RadioButton rbEnglish = new RadioButton();rbEnglish.ID = "RadioButtonEnglish";rbEnglish.Text = "English";rbEnglish.GroupName = "RBGroup5";rbEnglish.AutoPostBack = true;controllist5.Add(rbEnglish);//写other的checkchanged事件RadioButton rbOther = new RadioButton();rbOther.ID = "RadioButtonOther";rbOther.Text = "Other";rbOther.GroupName = "RBGroup5";rbOther.AutoPostBack = true;rbOther.CheckedChanged += new EventHandler(rbOther_CheckedChanged);controllist5.Add(rbOther);TextBox textOther = new TextBox();textOther.ID = "textOther";controllist5.Add(textOther);hshTable.Add(4, controllist5);////第一行第六列,如果该列无任何控件,要留空hshTable.Add(5, null);//控件行赋值rs.AddRow(hshTable);//控件替换,替换原来的lableUFIDA.U9.CS.UI.PDHelper.WebpartHelper.ReplaceControl(bel110, rs, this.Card2);5.子控件事件触发可以在新增子控件时,编写子控件的触发事件,如果是checkbox、RadioButton这些控件要注意把AutoPostBack属性改为true,如果不需要触发事件,设置为false,避免产生页面交互。

//写other的checkchanged事件RadioButton rbOther = new RadioButton();rbOther.ID = "RadioButtonOther";rbOther.Text = "Other";rbOther.GroupName = "RBGroup5";rbOther.AutoPostBack = true;rbOther.CheckedChanged += new EventHandler(rbOther_CheckedChanged);//重点这句话controllist5.Add(rbOther);void rbOther_CheckedChanged(object sender, EventArgs e){//throw new NotImplementedException();//在此写逻辑代码}6.子控件的取值、赋值可以使用控件函数FindControlByID查找到相关子控件,进行控件类型转换后,如常用控件一般使用即可。

TextBox tb = (TextBox)(rs.FindControlByID("textbox1"));string str = tb.Text;源代码附件:SubjectUI.rar7.部署修改AutoBuild.bat文件,把控件dll拷贝到UILib目录下。

8.注意事项●控件内部子控件的命名。

由于子控件的赋值、取值、触发事件,都是通过控件ID进行查找的,要注意控件ID不能重复,如果一个页面放多个控件,子控件的ID建议使用控件名+子控件名方式,如:rs1_textbox1,rs2_checkbox1等。

●由于控件是使用table进行排版,所以标题数和表格数要一致。

例如表格如果有6列,则标题必须要6个、表体行的哈希表也必须要有6个值,否则产生错位。

如:List<string> headlist = new List<string>();//6个标题,代表6列headlist.Add("Item to be checked");headlist.Add ("Evaluation");headlist.Add("Reviewer");headlist.Add("Certifier Remarks");headlist.Add("Certifier");headlist.Add("Guideline");//一个哈希表代表一行,哈希表必须有6个元素,代表6列,如果某列没控件,也必须赋值null,如hshTable.Add(5, null);Hashtable hshTable = new Hashtable();hshTable.Add(0, controllist1);hshTable.Add(1, controllist2);hshTable.Add(2, controllist3);hshTable.Add(3, controllist4);hshTable.Add(4, controllist5);hshTable.Add(5, controllist6);rs.AddRow(hshTable);。

相关文档
最新文档