我有以下使用Excel2013复选框(ActiveX控件)的代码:
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
CheckBox2.Value = False
Else
CheckBox2.Value = True
End If
End Sub
Private Sub CheckBox2_Click()
If CheckBox2.Value = True Then
CheckBox1.Value = False
Else
CheckBox1.Value = True
End If
E
我对VBA非常陌生(并且只在excel中知道它)。
我正在尝试切换一些(但不是全部)复选框。它们目前通过CheckBox15命名为CheckBox1。例如,我如何在CheckBox10中循环使用CheckBox5?
我想我希望有一个类似于“CheckType”的控件的“方法”,它可以让我检查名称?
这是我尝试过的。导致编译错误-未定义Sub或Function,并突出显示工作表。
Private Sub BoxCheck()
atLeastOneChecked = False
For i = 2 To 4
If Worksheets("ActiveX").
我正在使用带有VBA的Excel 2003,我在工作表上动态创建复选框控件,并希望将VBA控件链接到一个类,以便当用户单击复选框时会触发一个事件,以便我可以执行某些操作。
根据我所读到的,创建一个user类似乎是解决方案,但尝试过后,我无法让它工作。
我的user类如下所示:
Option Explicit
Public WithEvents cbBox As MSForms.checkbox
Private Sub cbBox_Change()
MsgBox "_CHANGE"
End Sub
Private Su
作为VBA新手,我在理解一些VBA行为时遇到了问题。
我得到了以下代码,它将数据库中的行读入activex控件,然后尝试将这些值放入数组中。SQL是专有的,在那里没有洞察力-但基本上它关心vxdata1连接,执行SQL命令并将结果集放入控件元素中。
//put all records from the db into the vxData1 datagrid
vxData1.SQLCommand = "SELECT x,y,z FROM t ORDER BY z"
//put the datagrid values into an array
Dim Array_Werte(
这是我第一次使用VBA。我想使用Activex标签创建简单的复选框(不使用表单标签,因为那样我就无法编辑字体等等)。我在使用这个代码的同时还使用了一种字体:
Private Sub Label1_Click()
If Label1.Caption = Chr(254) Then
Label1.Caption = Chr(168)
Else
Label1.Caption = Chr(254)
End If
End Sub
我有多个标签就像复选框一样。所以我把上面的代码应用到一个标签上,然后复制粘贴那个标签。但是,代码没有根据新标签的名称进行
我正在尝试用VBA在Excel中创建一个简单的if语句。
我正在创建一个新的复选框
将以下代码添加到框中。
Sub CheckBox1_Click()
HideRows "2:5"
End Sub
Sub HideRows(rowRange)
If CheckBox1 = False Then
Rows(rowRange).EntireRow.Hidden = True
Else: Rows(rowRange).EntireRow.Hidden = False
End If
End Sub
结果:如果复选框处于选中状态或未选中状态,则隐藏行。
(复选框
我在一个电子表格中有多个形状和复选框。我想创建一个函数,当点击相应的复选框时,它会将一个特定的形状放在前面(比它的Z顺序更高)。这是我目前拥有的代码:
Sub CheckBox3_Click()
If CheckBox3.Value = True Then
Sheet1.Shapes("blueoval").ZOrder msoBringToFront
End If
End Sub
每当我运行这段代码时,我都会得到运行时错误'424‘。我是新来的VBA的excel,所以任何帮助都会非常感谢。这段代码有什么问题?遗漏了什么?等等。谢谢!
我有几个包含老式的不可点击的utf8字符复选框()的Word文件,我想用真正的、可点击的复选框替换它们。应该取消检查它们的,而检查另一个指定的utf8字符(我现在还不知道它的数量)。
我尝试了搜索、替换和复制我在网上找到的宏。我不是word用户,这是一次性的任务,所以遗憾的是,我没有足够的时间学习VBA来编写宏这样的东西。
我在网上找到了这个,但在宏窗口中,我甚至不能将复制到“要搜索的字符串”中。
For Each myStoryRange In ActiveDocument.StoryRanges
With myStoryRange.Find
.Text = &
我正在创建一个VBA宏来选择一个工作表中的所有复选框,它工作得很好,但是现在我想调整我的代码以选择和取消选中特定范围内的复选框。
这是我的密码。
Sub Select_all()
Dim Cbox As CheckBox
Dim Rng As Range
Set Rng = ActiveWorkbook.Sheets("Sheet4").Range("B7, B104")
For Each Cbox In ActiveSheet.CheckBoxes
If Not Intersect(Cbox.TopLeftCell, Rng) Is Nothing T
如何访问复选框状态的值。我本来希望看到一个类似于Value属性的东西,如果选中复选框,它就是True。然而,以下内容不起作用:
Worksheets("Summary").Shapes("chkbxRunLocally").controlform.Value
它抛出:
Object does not support this property or method
如果这不是财产存放的地方,那又在哪里呢?
所以我有这个电子表格和几个列表框。在这些列表框中,我有一些实际上是过滤器的值/项。我希望获得每个列表框的每个项/筛选器,以修改代码中的SQL查询。因此,我被要求在列表框中循环,并设法通过循环电子表格的形状来实现它,但最终.现在,这些列表框在VBA中被视为形状,而不再是列表框。我正在寻找一种方法,要么在列表框中转换我的形状,要么从形状类型中找到一种方法来循环每个列表框的项目。这是我的代码的一部分,到目前为止,我循环遍历每个形状/列表框,如果在我的形状名称中有单词"CFRA“,那么我希望在我的列表框中选择的每一项中循环,以便我的函数返回它们。
Private Function getLis
我正在尝试创建一个类似“Master复选框”的东西,它将自动检查我工作表上的所有其他复选框。因此,我试图在单击“Master复选框”时立即启动以下VBA代码,我使用的是表单工具而不是Active X来创建复选框,以确保我的VBA与任何机器兼容(我读到Active X可能导致一些问题),并得到了以下代码:
Sub Mastercheckbox()
Dim Chk As CheckBox
With ActiveSheet.Shapes("Mastercheckbox")
If .ControlFormat.Value = False Or .ControlFormat.
我试图阻止excel工作簿基于复选框的状态关闭。
放置在'ThisWorkbook‘中的示例代码:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If CheckBox0.Value = "FALSE" Then
b = MsgBox("Are you sure that you want to submit?", vbYesNo)
End If
If b = vbNo Then Cancel = True
End Sub
目前,我得到一个运行时错误424,对象要
我目前有一个从网站复制到我的excel文件中的VBA代码,用于清除活动工作表中的所有复选框。但是,如果未选中这些复选框,则应在未选中复选框时清除某些单元格内容的公式(通过VBA完成)将不起作用。例如:我设置了VBA公式,以便在选中复选框1时,某个单元格的值将更改以反映某些信息,并且VBA代码还会在取消选中该复选框时使单元格内容清晰。以下代码的问题是,当它运行时(它确实成功地取消选中了复选框),连接到这些复选框的单元格的值不会像取消选中复选框时应该清除的那样清除。代码如下:
Sub ClearCheckBoxes()
'Updateby Extendoffice 20161129
Dim
能不能有人看一下这段代码,并提供一个提示,说明我做错了什么。这段代码几乎字面上取自一本参考书,作为如何使用VBA对象的一个示例。以下是代码:
Sub TestMyADODB() Dim mySQL As String Dim myConnection As DAO.Connection Dim myRecordSet As DAO.Recordset Set myConnection = CurrentProject.Connection ' Crash here mySQL = mySQL & "UPDATE Amplifier " mySQL = mySQ
我是一个在VBA编程的纽比。我想修改一个带有函数的dotm文档。我有一个下拉的"Res_i“和标签:"Lb_Date_i",都是ActiveX,从1到10。我想根据下拉菜单的选项设置标签的标题。
这是我的函数,以模块声明
Public Function T_Date(ByRef dt As Object, p As Integer)
'p=0, release the date to 01.01.1900
'p=1, for user selected date
'p=2, for the date of today
Select Case p
我想做一个复选框,调用一个宏,该宏在Excel工作表中隐藏和取消显示带有单元格中特定值的列,但它无法工作。
我尝试了下面的VBA脚本
Sub Hide_Forecasts()
Dim c As Range
For Each c In Range("E12:CF12").Cells
If c.Value = "Forecast" Then
c.EntireColumn.Hidden = True
End If
Next c
End Sub
Sub Unhide_Forecasts()
我有一个vba代码,它被分配给一个名为"run report“的按钮。我有一些指示与复选框,我试图做的是启用按钮,只有当所有的复选框都被勾选。我尝试了下面这样的方法,但不知何故不起作用。声明似乎有问题。我使用的是微软office 2013版本。
Sub buttonenable()
Dim B1 as Button
Dim C1 as Checkbox
Dim C2 as Checkbox
Dim C3 as Checkbox
Set B1 = Thisworkbook.Sheets("Home").Button("Run report")
Set C1