Tag: combobox

基于更改Combobox值设置单元格查找值并将其写入其他工作表中的另一个单元格

我试图填写Excel工作表中的某个单元格(“iNVD)从数据从工作表”数据库“基于更改combobox。工作表(数据库)中的工作表(数据库)中的comboboxA2我试图读取H2并将其写入工作表( iNVD)。我的代码和buton的错误被按下 Dim rngTblArray As Range Set nvdsheet = Worksheets("iNVD") With Worksheets("database") 'Note when using With statement that .Range and .Cells start with a dot Set rngTblArray = .Range(.Cells(2, 8), .Cells(500000, 8)) 'One column End With 'MsgBox rngTblArray.Address(External:=True) 'This line for demo purposes only nvdsheet.Cells(3, 7) = Application.VLookup(CLng(Me.cbmnaslovnvd.Value), rngTblArray, 2, 0) Me.vbmnaslovnvd.Value,例如返回“Ulica Jakca 1”,但CLng(Me.cbmnaslovnvd.Value)=我使用buttonclick。 excel“Ulica […]

用户窗体comboboxExcel VBA

所以有点讨厌,因为我已经尝试了迄今为止我已阅读的每一个build议,我似乎无法让我的用户表单combobox通过VBA填充。 我已经尝试了下面的方法,似乎适用于每个人,但我…. Me.Weeks.List = Array("30", "36", "40") 和…. With Weeks .AddItem "30" .AddItem "36" .AddItem "40" End With 到目前为止,当我运行它时,在用户表单中什么也没有显示出来。 有没有我失踪的设置? 当然这些是初始化事件的一部分。 🙂 每个请求更多的代码: Private Sub ToolBoxForm_Initialize() Weeks.Clear 'MORE STUFF Me.MinAYWeeks.List = Array("30", "36", "40") 'With MinAYWeeks ' .AddItem "30" ' .AddItem "36" ' .AddItem "40" 'End With 'MORE STUFF End Sub 还有一些用OKbutton进行计算的东西,但不影响combobox的内容,只是引用所选选项的值的东西。 在此先感谢家伙

从excel列的下拉列表中select电子邮件主题

我有电子邮件的代码,我想连接到一个Excel中的列。 当macros被触发时,应该出现一个下拉菜单,这样我可以根据Excel中的列表select如何发送电子邮件。 该列表是从其他excel生成的,它可以有2个全名或40个全名。 该列表在表4中,名称在列L中,电子邮件地址在列Q中,并且列P中的文本。如果从下拉列表中selectL2中的名称,则应该从Q2中select电子邮件地址,名称从L2和P2的文本。 这是我迄今为止所拥有的: Sub email_to_one_person_from_the_list() Dim OutApp As Object Dim OutMail As Object Dim xlApp As Object Dim sourceWB As Object Dim sourceWS As Object Set xlApp = CreateObject("Excel.Application") strFile = "C:\persons.xlsm" Set sourceWB = xlApp.Workbooks.Open(strFile, , False, , , , , , , True) Set sourceWH = sourceWB.Worksheets("Sheet4") sourceWB.Activate sourceWH.Application.Run "Module2.FetchData3" On […]

使用VBAcombobox(窗体控件,内部工作表)中的项来运行macros

所以我想实现的是当某人在combobox(位于工作表A1单元格A1附近)点击某个特定年份时,macros按照被点击的年份运行。 我希望列表项被存储在VBA代码本身,而不是在工作表上select它们(我还没有find关于不使用工作表数据的combobox的单个教程)。 我创build了一个button来将数据加载到ComboBox1中。 这是现在的代码(我不是严格遵守它,所以如果有更简单的方法来写这个,请让我知道): Sub Button1_Click() Sheets("MacroBase").ComboBox1.List = Array("2015", "2016", "2017", "2018", "2019") End Sub Sub ComboBox1_GotFocus() With ThisWorkbook.Sheets("MacroBase").Shapes("ComboBox1").ControlFormat Select Case .List(.Value) Case "2015": ShowOnly2015Columns Case "2016": ShowOnly2016Columns Case "2017": ShowOnly2017Columns Case "2018": ShowOnly2017Columns Case "2019": ShowOnly2019Columns End With End Sub 我没有粘贴代码ShowOnly ####列(testing和运行没有问题)。 目前_GotFocus不起作用。 我事先感谢您的所有时间和帮助:)

EXCEL VBA用户界面 – 如果select某个combobox,则为负值

我正在创build一个带有用户窗体的简单电子表格,以允许pipe理员助理将事务input预算。 我唯一遇到的一个问题是如果combobox中的值为:entrytype为“Revenue”,那么找出一个值为负的方法(自动) 任何帮助将不胜感激,甚至在其他地方看一个类似的例子… Private Sub CommandButton1_Click() Dim lRow As Long Dim ws As Worksheet Set ws = Worksheets("Entry") lRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row With ws .Cells(lRow, 1).value = Me.entrytype.value .Cells(lRow, 2).value = Me.expense1.value .Cells(lRow, 3).value = Me.expense2.value .Cells(lRow, 4).value = Me.eventcategory.value .Cells(lRow, 5).value = Me.state.value .Cells(lRow, 6).value = Me.dateVariable.value .Cells(lRow, 7).value = Me.invoice.value .Cells(lRow, 8).value […]

如何使combobox项目列表dynamic?

我正在使用工作表上的“生成”button。 当我点击button时,会popup一个窗体,其中包含两个combobox。 根据第一个combobox中的select,第二个combobox选项列表被填充。 对于第一个combobox,当我硬编码的项目值,它工作正常。 表格代码如下: Private Sub UserForm_Initialize() With ComboBox_DL .AddItem "DL1" .AddItem "DL2" End With End Sub 我试图通过使用下面的表单代码从Excel工作表中的列中获取combobox项目值使这个项目列表dynamic: Private Sub UserForm_Initialize() With ComboBox_DL For Each c In ActiveSheet.Range(Range("AE"), Range("AE").End(xlDown)) .AddItem c.Value Next End With End Sub 但是上面的代码会抛出错误:运行时错误'1004':对象'_Global'的方法'范围'失败 I modified the code adding sheet details: With ComboBox_DL For Each c In ThisWorkbook.Worksheets("Business_Input_Data").Range(Range("AE"), Range("AE").End(xlDown)) .AddItem c.Value […]

ComboBox清除Excel VBA

我正在写一个脚本,我有一个用户Userform与三个ComboBox 。 我希望ComboBox3的内容取决于用户在ComboBox2input的内容。 我已经通过创buildComboBox2的内容的索引并使用Select Case函数来填充ComboBox3 。 这工作正常。 当UserForm初始化时, ComboBox3被冻结,直到用户在ComboBox2input一些东西。 但是,我希望ComboBox3变成空的,并且每当用户inputComboBox2的内容后,都会重新冻结其内容。 我试图用下面的代码来做到这一点: If ComboBox2 = "" Then ComboBox3 = "" And ComboBox3.Enabled = False End If 这给了我一个“types不匹配”的错误消息。 我已经尝试了以下,它的工作原理: If ComboBox2 = "" Then ComboBox3.Enabled = False End If 但是,它只会重新冻结ComboBox3 ,我真的需要它是空的。 我究竟做错了什么? 非常感谢您的帮助。

comboboxselect不出现在首先点击Excel VBA

我正在写一个脚本在Excel VBA中,我在一个用户Userform工作。 在这个用户Userform ,我有两个ComboBox , ComboBox1和ComboBox4 。 这两个ComboBox都是在脚本中填充的下拉列表。 我已经做到这一点,以便ComboBox4得到填充后,取决于ComboBox1上的用户input。 我写了下面的代码: Private Sub UserForm_Activate() With ComboBox1 .AddItem "Afghanistan" .AddItem "Åland Islands" .AddItem "Albania" .AddItem "Algeria" .AddItem "American Samoa" .AddItem "Andorra" End With With ComboBox4 .AddItem "Africa" .AddItem "Americas" .AddItem "Asia" .AddItem "Europe" .AddItem "MENA" .AddItem "Other" End With End Sub Private Sub ComboBox1_Change() If ComboBox1 = […]

无法将值添加到VBA中的Combobox

我正在尝试将值添加到由工作表上的macros创build的combobox。 combobox被创build,但我无法填充它们中的数据。 我明白了 运行时错误438:对象不支持此属性… 我试图将sComboBox声明为Shape / Object /将其留空,但无济于事。 .list属性代码错误。 VBA智能感知也不拿起.list属性。 我也尝试使用OLEObjects,但我得到不同的编译器错误。 另一个问题是:如何在特定的单元格中创buildcombobox,以便它们不会彼此浮动或重叠? Dim sComboBox If (wsTO.Cells(intLoopCounter, 5).Value <> "") Then cBoxName = "cBox" & wsTO.Cells(intLoopCounter, 5).Value Set sComboBox = wsTO.Shapes.AddFormControl(xlDropDown, Left:=Cells(intLoopCounter, 12).Left, _ Top:=Cells(intLoopCounter + 1, 12).Top, Width:=250, Height:=25) With sComboBox .Name = cBoxName .List = Array("Apple", "Orange") End With End If

使用列标题填充Excel VBAcombobox

我想填充列标题(A1到AR1)的combobox如何在Excel VBA中执行此操作?