Tag: checkbox

为什么分组ActiveXcheckbox会改变OLEObject的可见性

我有一些代码循环通过Excel工作表上的ActiveX控件。 这将logging哪些checkbox已被选中。 Dim obj AS OLEObject For Each obj In ActiveSheet.OLEObjects If TypeName(obj.Object) = "CheckBox" Then ' loop through all checkboxes to find selections BooCheck = obj.Object If BooCheck = True Then MyArray(j) = obj.Name 'if checkbox selected then store the associated Name j = j + 1 End If End If Next obj 这一切工作正常。 […]

通过命令buttondynamiccheckbox事件

我目前正在编程一张表格,用图表形象化数据集。 由于这张表的用户不需要所有的图表,我想让他们select通过UserForm需要的。 由于数据集的数量是可变的,所以UserForm将具有与数据集相同数量的checkbox。 用户窗体代码如下。 Private Sub UserForm_Initialize() Dim chkBoxA As MSForms.CheckBox Dim chkBoxB As MSForms.CheckBox Dim lblBox As MSForms.Label Dim cnt As Control Amount = Sheet4.Range("C4").Value 'Amount of datasets For i = 1 To Amount Set lblBox = Me.Controls.Add("Forms.label.1", "Label" & i) lblBox.Caption = "Set" & i lblBox.Left = 5 lblBox.Top = 8 + ((i […]

Excel 2003,用checkbox添加内容

我正在用VBA来提供一个范围的行,每行都有自己的checkbox。 到目前为止,代码如下所示: Dim objColumnHeadings As Range, objDBsheet As Worksheet Dim lngRow As Long, objCell As Range Dim objCheckbox As Object Set objDBsheet = getDBsheet() Set objColumnHeadings = objDBsheet.Range("ColumnHeadings") objColumnHeadings.ClearContents lngRow = 1 For Each varExisting In objColumns objColumnHeadings.Cells(lngRow, 1).Value = varExisting Set objCell = objColumnHeadings.Cells(lngRow, 2) Set objCheckbox = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1" _ , Left:=412.8 _ , […]

Excel VBA – validation是否选中了checkbox并连接各个文本框的值

我是一名Excel VBA初学者,希望得到一些帮助。 在客户注册用户表单中,我有一个“联系人”部分,该部分将被保留以接收最多5个正在注册的客户的联系电子邮件。 在这个用户表单中,我有以下对象: 5个文本框( txtEmail1 , txtEmail2 , txtEmail3 ,…) 5个checkbox( ckboxEmail1 , ckboxEmail2 , ckboxEmail3 ,…) 1命令bSendEmail ( bSendEmail ) 电子邮件将被input到文本框中,button将用于打开Outlook应用程序,电子邮件已经在“到”字段中。 checkbox将用于定义哪些电子邮件将包含在“收件人”字段中。 这是我的怀疑。 我如何validation哪些checkbox被选中,从文本框中只使用(连接)他们的电子邮件? 实践例1: TxtEmail1.value = email1@example.com TxtEmail2.value = email2@example.com TxtEmail3.value = empty TxtEMail4.value = email4@example.com TxtEMail5.value = empty CkboxEmail1.value = true CkboxEmail2.value = true CkboxEmail3.value = false CkboxEmail4.value = true CkboxEmail5.value […]

在VBA中创buildcheckbox,设置“单元格移动和大小”

我已经创build了一个电子表格,里面有很多checkbox。 有时候我已经写完了一个专栏,希望把它从视图中隐藏起来。 但是,如果我隐藏列,它不会隐藏该列中的checkbox。 如果手动将checkbox属性更改为“使用单元格移动和大小”,则会解决此问题。 但正如我所说,有很多checkbox,我用macros创build它们。 所以我试图添加下面的创buildmacros的vba:CBX.Placement = xlMoveAndSize 但是这并没有改变。 有任何想法吗? 这里是完整的VBA: Sub CellCheckboxReview() Dim myCell As Range Dim myRng As Range Dim CBX As CheckBox With ActiveSheet 'remove comment if you want to delete all .CheckBoxes.Delete Set myRng = .Range(ActiveCell.Offset(19, 0), ActiveCell.Offset(23, 0)) End With For Each myCell In myRng.Cells With myCell Set CBX = […]

如果必填字段为空,Excel / VBA将取消选中checkbox

我写了一个函数,对于文档中的每个checkbox,检查字段C140是否为空,如果是,则取消选中同一行中的checkbox。 Sub MarkCheckBoxes() Dim chk As CheckBox Dim ws As Worksheet Set ws = ActiveSheet For Each chk In ws.CheckBoxes If ws.Range("C140").Value = "" Then chk.Value = False Else chk.Value = True End If Next chk End Sub 现在我想改变,每行检查是否必填字段为空,如果是然后取消选中与空字段相同的行中的checkbox,也需要干净的行颜色: EntireRow.Interior.ColorIndex = xlColorIndexNone 当我将range("c140")更改为range("c140:c150")我的错误不匹配。 也 拉尔夫给我第一部分的答案,但现在我有另一个问题。 我想做一些函数,让我检查是否有任何字段在第149行是文本“强制性然后检查下面的行是否为空,如果是然后做取消select所以我试过这样的: 如果ws.Rows(“149”)=“强制”然后如果ws.Range(“C”&chk.TopLeftCell.Row)。价值但我不知道如何写第二个如果检查每列中的值

Excelcheckbox通过相对引用调用单元格

我正在尝试创build一组checkbox,单击此button时,将对checkbox所在行的单元格进行更改。 为此,我将不得不调用checkbox本身的单元格位置。 我不知道如何做具体的代码的一部分。

根据用户表单隐藏行checkbox

大家,早安, 我有一个macros,我想sorting数据。 我的工作簿中的一个button调用一个带有10个checkbox的小型用户窗体。 用户应该select他想查看的类别,然后点击sorting。 我想要的结果是只有他select显示的类别,但我得到一个全部或没有附加macros的结果。 下面是支持表单/button对类别进行sorting的macros。 我已经通过谷歌和其他几个论坛search,找不到与我的问题有关的答案! 任何帮助你可以提供将不胜感激。 谢谢! Private Sub cmdSort_Click() LastRow = Range("A" & Rows.Count).End(xlUp).Row If chkFE = True Then For Each cell In Range("BC4:BC" & LastRow) If UCase(cell.Value) <> "Fire Extinguishers" Then cell.EntireRow.Hidden = True End If Next End If If chkChem = True Then For Each cell In Range("BD4:BD" & LastRow) […]

VBA Excelcheckboxselect工作表上的所有特定checkbox

我有一个Excel工作表,其中第一个checkboxCheckBox的两列是“主”checkbox,切换所有其他checkbox。 我从本教程中获得了代码。 它工作正常,直到我复制到第二列的代码。 当激活第一个或第二个“主”checkbox,它激活所有checkbox。 第一个“主”checkbox被称为“MCB1”,第二个在该代码副本(与另一个子名称),被称为MCB2。 这是我的代码: Sub SelectAll_Read() Dim CB As CheckBox For Each CB In ActiveSheet.CheckBoxes If CB.Name <> ActiveSheet.CheckBoxes("MCB1").Name Then CB.Value = ActiveSheet.CheckBoxes("MCB1").Value End If Next CB End Sub Sub Mixed_ReadState() Dim CB As CheckBox For Each CB In ActiveSheet.CheckBoxes If CB.Name <> ActiveSheet.CheckBoxes("MCB1").Name And CB.Value <> ActiveSheet.CheckBoxes("MCB1").Value And ActiveSheet.CheckBoxes("MCB1").Value <> 2 Then […]

根据参数在用户窗体中创buildcheckbox

我想要一个用户select他想要创build一个新的文本行。 但是他可以select的纸张数量可能随着时间的推移而变化,我不想对纸张名称进行硬编码。 这是一个我想要做的例子(“o”代表checkbox): o 01.2013 o 07.2013 o 01.2014 o 07.2014 我创build了一个空框架的用户窗体来放置我的checkbox,并将这一点代码添加到用户窗体中: Private Tck(10) As MSForms.CheckBox Private Sub UserForm_Initialize() Dim ws As Worksheet Dim i As Long i = 1 For Each ws In ActiveWorkbook.Worksheets If Left(ws.Name, 3) = "T2M" Then Set Tck(i) = Frame1.Controls.Add("Forms.Checkbox.1", "Checkbox" & i) Tck(i).Caption = Right(ws.Name, 7) i=i+1 End If […]