Tag: combobox

如何用现有的数组填充combobox

当我尝试编辑现有项目的详细信息时,我的代码未能填写列表中最后两项的相应信息。 有一个combobox,用于select要编辑的项目,然后是项目ID的文本框,以及该项目的订购date和发货时间的文本框,然后两个combobox用于select发货状态和在线商店它是通过购买。 这些字段都会自动填充所选项目的相应信息。 除了项目名称本身和项目ID以外,可以编辑与所选项目相对应的详细信息。 它适用于每个项目除了最后2项,我不知道为什么。 以下是编辑现有项目的代码: Option Explicit Private Sub cboOrderedFrom2_Change() cboOrderedFrom2.BackColor = vbWhite lblOrderedFrom2.ForeColor = vbBlack End Sub Private Sub cboOrderStatus2_Change() cboOrderedFrom2.BackColor = vbWhite lblOrderStatus2.ForeColor = vbBlack End Sub Private Sub cboRemoveOrEditItemDetails_Change() cboRemoveOrEditItemDetails.BackColor = vbWhite lblItemDescription2.ForeColor = vbBlack Dim ws As Worksheet, i As Integer, wsLR As Variant Set ws = ThisWorkbook.Sheets("Sheet1") wsLR = […]

与内部工作表名称的combobox的值

我有一个Excel电子表格,我想应用一个combobox。 combobox下拉列表的值显示在Excel表格的A列中: A 1 Test 1 2 Test 2 3 Test 3 4 Test 4 到目前为止,我使用下面的代码为combobox: Private Sub UserForm_Initialize() ComboBox1.RowSource = "Sheet1!A1:A4" End Sub 此代码完美工作。 但是,当我将工作表的名称从“Sheet1”更改为“Marketing”时,代码将不再运行。 因此,代码应该引用Excel中的内部工作表名称。 因此我创build了以下代码: Private Sub UserForm_Initialize() ComboBox1.RowSource = Sheet1.Range("A1:A4") End Sub 但是,使用此代码我得到运行时错误424.你有任何想法如何使用内部工作表名称来获取工作表中的值到combobox的下拉菜单?

在Excel工作表中获取combobox的位置

我有一张带有combobox的表格。 在combobox的左边有一个列,用户可以使用“X”标记位置,如果其右侧的combobox应该做些什么(用dynamic范围内的值填充)。 我正在考虑这样的事情,但我没有设法使其工作: Dim ComBx As ComboBox Dim ws2 As Worksheet Set ws2 = ActiveWorkbook.Worksheets("Tool") For Each ComBx In ws2.ComboBox If ComBx.Offset(0, -1).Value = "X" Then With ComBx 'do stuff End With End If Next ComBx 任何想法如何引用一个combobox的位置? 我必须做类似的checkbox,它工作得很好,但是这逃避了我。

在用户表单上input慢速input

我有一个用户表单只在工作簿的第一次打开才能从用户获取项目信息。 表单是非常基本的,我有12个标签,每个标签有1个文本框,1个combobox或最多1个文本框和1个combobox在一起。 问题是这个用户表单popup时, input速度太慢了 。 只要这种forms没有任何主要的代码,就不应该花那么多时间。 即使在页面中没有任何自动计算,我将input反映为输出(这就是为什么这个问题不能帮助我: 如何提高excel VBA中的用户表单的存储速度 ) (PS:ComboBoxes的行源是命名的范围,但我有另一种forms相同的风格,我不面对这个问题) 这是我的输出代码: 'Project Name Input Private Sub TextBox7_Change() Sheet2.Range("E3").Value = TextBox7.Value End Sub 'Customer Name input Private Sub TextBox1_Change() Sheet2.Range("E4").Value = TextBox1.Value End Sub 'Region Input Private Sub ComboBox1_Change() Sheet2.Range("E5").Value = ComboBox1.Value End Sub 'City Input Private Sub TextBox6_Change() Sheet2.Range("G5").Value = TextBox6.Value End Sub 'Bid […]

Combobox不添加定义的命名范围

我有两个combobox设置在Sheet1中。 我需要将工作表的列表添加到combobox,它工作正常。 我需要将sheet2的第一列添加到第一个单元格作为名称(称为“名称”)的combobox二。 此代码适用于我的用户窗体,与我而不是Sheet1,但使用或者不适用于我。 我得到一个“对象不支持此属性或方法”错误。 谢谢, Private Sub Workbook_Open() Dim refSheet As Worksheet Set refSheet = ActiveWorkbook.Sheets(2) Dim oSheet As Excel.Worksheet For Each oSheet In ActiveWorkbook.Sheets Sheet1.ComboBox1.AddItem oSheet.Name Next oSheet Dim lastrow As Long lastrow = refSheet.Cells(Rows.Count, 1).End(xlUp).Row With refSheet.Columns(1) Range(Cells(1, 1), Cells(lastrow, 1)).Select Selection.CreateNames Top:=True End With Sheet1.ComboBox2.RowSource = "Name" End Sub

VBA Multicolumn Combox – 当第一列是列表中的绑定列时,获取第二列的值

我有两个用户表单(实际上更多,但这两个是我目前正在使用的)。 第一种forms被称为“ExistingOrNewWelder”(我将称之为表格A )。 第二种forms被称为“InitialInfo_Form”(我将称之为表格B )。 当用户单击工作表上的button时,表单A被打开。 最初,它看起来像这样: 当用户select“为现有焊工添加新WQTR”旁边的单选button时,出现Combobox。 当selectComboBox中的一个项目时,只有列表中的绑定列的值显示在框中。 所以我在挣扎的地方是我想能够使用ComboBox中显示的名字和ID号码。 我希望这两条信息都出现在用户单击确定时显示的后续表单B中。 在图片中,Foo这个词代表了表格A中的ID号码,您可以在下面的代码中看到这个词。 这第一段代码是Form A Option Explicit Dim newWelder As Boolean Dim wqtr As Boolean Public newWelderBoolValue As Boolean Public welderIDSelected As String Private Sub UserForm_Initialize() 'varialbe fun Dim lastRow As Long Dim nameCell As range Dim box As control wqtr = False newWelder = False […]

Excel VBAcombobox的值不同于文本

我设置了一个combobox,当select时将更新数据透视表。 但是我需要combobox从所选文本中返回一个不同的值。 恩。 您在下拉框“Cheerios”中select一个产品名称。 但它的SKU编号为1234.我需要combobox返回1234,而不是“Cheerios”。 这可能吗? 编辑: 下面是我从哪里获得我的列表填充的图像。 B列是下拉菜单中显示的内容,A列是我select产品时需要返回的内容。 编辑2: Private Sub cmb_SkuSelect_Click() Dim xlSheetSort As Worksheet Dim lastRow As Long Dim skuValue As Integer Set xlSheetSort = ActiveWorkbook.Worksheets("Sort") lastRow = xlSheetSort.Range("A1").End(xlDown).Row With xlSheetSort.Range("B1:B" & lastRow) Set c = .Find(cmb_SkuSelect.Value, LookIn:=xlValues) If Not c Is Nothing Then skuValue = xlSheetSort.Range("A" & c.Row).Value End If End […]

wbclosures时保留combobox值

在继续下面的问题中,如何在工作簿closures后轻松存储combobox值? 例如,如果最后一个combobox的值可能是在我closures工作簿的时候,那么下次打开它时,我希望combobox列表的值被设置为5月。 谢谢!

链接单元格值以形成combobox值

可能很容易,但是如何将表单的comboxbox值链接到单元格或单元格的下拉列表? 在我的情况下,1或2维的月份 – 年份或月份的txt – 月份值或数组需要链接到窗体combobox。 结果应该是,当我改变forms的combobox值时,它也更新Excel单元格或单元格(上面的2单元格组合),也反过来,当我更新单元格时,它也更新formscombobox值。 自动取款机,我只有一种方式,从formscombobox到价值使用内置子。 Sub ComboBox1_Change() ThisWorkbook.Sheets("List").Range("G2").value = Form1.ComboBox1.Value End Sub

如何在VBA用户窗体中计算多个combobox的百分比

您好,我需要给一个VBA中的用户窗体中的多页的百分比。 如下所示 我已经格式化了combobox,如下所示: Private Sub UserForm_Initialize() With Cbx1_1 .AddItem "N/A" .AddItem "Yes" .AddItem "No" End With With Cbx1_2 .AddItem "N/A" .AddItem "Yes" .AddItem "No" End With With Cbx1_3 .AddItem "N/A" .AddItem "Yes" .AddItem "No" End With With Cbx1_4 .AddItem "N/A" .AddItem "Yes" .AddItem "No" End With OUTBX.Value = " " End Sub 现在问题出现在回答问题后,我正在寻找一个名为“计算”的button,这将导致“ResultBx”中的百分比等于67%。 这个想法是计算看起来像这样: ResultBx.Value=(COUNTIF(Range(Cbx1_1,Cbx1_2,Cbx1_3,Cbx1_4),"=Yes"))/ […]