Tag: combobox

Excel VBAcombobox不允许从列表中select特定的项目

我的工作表中有一个dynamicsearch的combobox,dynamicsearch是通过在另一个工作表上的列表中search键入的字母来完成的。 search是由Excel公式完成的。 该列表是一个定义的范围,然后comboboxlistfillrange被设置为指定的范围。 当我打开下拉列表时,对于某些项目,combobox允许我从列表中进行select,而对于其他项目,select会随着我的select而消失。 我试图为什么这些物品消失。 名单很长(一万条),所以这种做法很慢,但我不知道这是否是问题。 我该如何解决这个问题? 有没有一种方法来为下拉列表中的鼠标点击select定义一个variables? 在此先感谢,Tali 这是我的代码: Private Sub ComboBox1_Change() Sheets("PS").EnableCalculation = True ComboBox1.ListFillRange = "DropDownList" ComboBox1.DropDown End Sub Private Sub CommandButton21_Click() Dim PS As Worksheet Application.ScreenUpdating = False Application.ErrorCheckingOptions.BackgroundChecking = False Sheets("PharmaSoft").Select Set PS = Sheets("PS") SelectionA = PS.Range("J2").Value If ComboBox1.Value = SelectionA Then Range("J19") = "Pharmacy purchase price" Range("N19") = […]

Excelcombobox条件If语句检测空白

我正在写一个If语句来testing我是否在两个combobox中select了一个选项。 被检查的combobox是从具有两个值的数组中生成的。 其中一个单元格是空白的,所以combobox中的最高值是空的。 我的if语句是 数组是 Private Sub cbApplicationSelection_Change() If (eMassWelcome.cbwesitechoose.text = "") Then eMassWelcome.cbApplicationSelection.text = "" MsgBox "A website has not been selected. Please select a website from the dropdown and try again." End If Exit Sub End Sub 这工作。 问题是popup了3次,我不知道为什么。 我试过IsNull()和listindex = -1 。 IsNull()不起作用,列表索引给了我与上面相同的结果。 所有这些都是在Excel中使用vba完成的。

如何将多个comboboxListFillRange更改为基于单元格值的命名范围?

我试图创build多个下拉列表,根据他们想要使用的列表进行更改。 例如,如果他们将控件单元更改为“List 1”,则所有combobox(ActiveX)将其列表填充范围更改为“= List 1”。 如果控制单元更改为“列表2”,则所有combobox将其列表填充范围更新为“=列表2”。 有一种方法可以用Data Validation来做到这一点,但是我需要能够键入的ComboBox函数,并且下拉列表将会改变,以便以键入的string开始显示列表中的项目。 我是一个完整的VBA初学者,所以我不完全理解与语言相比的细微差别。 我觉得我错过了很多正确的语法。 我已经把search的一些代码混合在一起,但没有一个匹配我正在寻找的东西,所以我试图以某种方式改变它。 我觉得我杀了很多。 我很抱歉啊哈 Dim i As Integer Private Sub ListChange() If Range("B4").Value = "Bonnie" Then For i = 1 To 182 ' 'Iterate from ComboBox1 to ComboBox182 to change ' listfillrange to 'Bonnie' named range Set cb = Sheet1.Shapes("ComboBox" & i).OLEFormat.Object.Object cb.ListFillRange = "=Bonnie" Next […]

Excel VBA将多个Combobox值传递给dynamic数组

我想知道是否有一种方法将选定的多个combobox值添加到dynamic数组。 到目前为止,这是我的代码下面,目前我只能提交一个选定的Combobox值到数组列表。 Private Sub UserForm_Initialize() ComboBox1.AddItem "1" ComboBox1.AddItem "2" ComboBox1.AddItem "3" End Sub Private Sub CommandButton1_Click() Dim cmbbox(10) As String Dim i As Integer For i = LBound(cmbbox) To UBound(cmbbox) cmbbox(i) = ComboBox1.Value MsgBox cmbbox(i) Next i End Sub 我想能够从combobox中select一个值,然后将该值传递到我的数组在0位置,然后如果从combobox中select另一个值,那么该值传递给我的数组1个职位等

Excel VBA:ComboBox_Click事件触发任何工作表上的任何更改

我有一个复杂的应用程序,我把它剥离到最低限度需要重现问题。 有一个名为ComboBoxRatesSelected的combobox劳工。 此combobox在图纸参数上有一个行来源,并且在图纸参数上有一个LinkedCell。 表单Labor的代码模块具有ComboBoxRatesSelected_Click的事件处理程序。 我已经剥离了这个事件处理程序,以便它只有一行代码,一个MsgBox。 无论何时对任何工作表上的任何单元格进行更改,事件处理程序都会触发两次。 即使未单击combobox,也会发生这种情况,并且没有更改combobox的代码。 整个工作簿中唯一的代码是上面提到的combobox的Click处理程序。 我唯一见过一个事件的意外触发是其他代码更改控件中的值,这将触发一个Click事件。 但是,这个精简版本规定了这一点。 文件可在这里:www.seiglefamily.com/data/ComboBoxFiresEvenWhenNotTouched.xlsm 交叉点: https ://www.excelforum.com/excel-programming-vba-macros/1186999-combobox_click-event-is-firing-for-any-change-on-any-worksheet.html http://www.vbaexpress .COM /论坛/ showthread.php?59577-ComboBox_Click事件,是烧换任何变化,上任何-工作表&p = 362039

活动xcombobox命名问题

我的VBA代码存在一些奇怪的问题,我想知道是否有人可以指出什么是错误的。 在打开我的工作簿时,这段代码被触发 Sub build_SupervisorDropdownBox() Dim locationRange As Range Set locationRange = Sheets("Dashboard").Range("O3:W3") Set sList = Sheets("Dashboard").OLEObjects.Add _ (ClassType:="Forms.ComboBox.1", _ Link:=False, _ DisplayAsIcon:=False, _ Left:=locationRange.Left, _ Top:=locationRange.Top, _ Width:=locationRange.Width, _ Height:=locationRange.Height) sList.name = "supervisorList" End Sub 这将创build我的combobox,但它具有默认名称comboBox1。 然而,如果我然后删除这个combobox,并再次运行完全相同的代码,一切都被创build和正确命名,我为此感到失望。 任何人都可以指出我需要看的正确方向。 谢谢 :) 编辑:我目前有supervisorList和sList声明为公共variables

Combobox – 变化 – 在3或4的值后开火

我有一个macros打开一个用户窗体。 用户窗体包含一个combox。 Combox包含循环中的值,该循环遍历工作簿中所有工作表的所有名称。 表名非常相似,ab100,ab101,ab102等等 当将数字eg102input到combobox值字段中时,会自动findgoogle smartsearch value ab102,并且可以使用buttonOK来打开工作表。 代码工作得很好wir 3digit nums,现在我得到了4digits数量,它不工作。 任何想法如何调整呢? 提前谢谢了 塞巴斯蒂安 Private Sub combSheets_Change() Dim i As Integer If Len(combSheets.Value) >= 3 Then k = ActiveWorkbook.Sheets.Count ReDim strWorksheetsArray(1 To k) For i = 1 To k strWorksheetsArray(i) = Sheets(i).Name Next i If disableChange = True Then disableChange = False Exit Sub Else […]

如何更改combobox的值当文本框值更改?

我有一个Excel电子表格有一个combobox填充信息,其旁边是单元格,当combobox中的项目被选中时显示项目ID。 我需要做的是当我input物品ID自动填充combobox时反向search项目。 到目前为止,我在单元格中有一个vlookup函数来显示从combobox中select项目时的项目ID。

在Excel文档标题中定位ActiveXcombobox

我有一个相当简单的问题,但不能find一个简单的答案。 我已经创build了一个combobox,并希望将其放置在我的文档的页眉/页脚,因此它不会覆盖数据字段。 见下文: 有没有人碰巧知道如何把它移到那里? 我认为这将需要VBA。 这是一个捕捉,展示了我可以拖动框的距离: 谢谢, 担

自定义stringcombobox

我有一个combobox ,根据comboboxselect生成其他textboxes的值。 目前我的comboboxselect有两个值“ 拒绝标题 ”和“ 原因 ”结合在一个单元格中。 我想分开但不知道如何写string? 拒绝标题被命名为“RejectTitle”原因被命名为“原因” 我想string显示在用户窗体中:RejectTitle – 连字符之间的原因我目前有 Dim f As Range, v v = Me.RejectTitleNm.Value 'find the selected value in the source range from ColB(RejectTitle) Set f = Range("RejectTitle").Find(v, lookat:=xlWhole) 谢谢