由于选择了组合框而更改文本框的值 VBA Excel
Changing value of TextBox due to selection of ComboBox VBA Excel
我有一个项目,在该项目中,我必须将文本框的值更改为在工作集中根据从组合框 select 编辑的值搜索的值。例如,如果我从组合框中 select "A" 它应该搜索工作表 "test" 找到 A 的输入并将文本框值更改为 1,因为这是为 A 输入的值。我已经看过这里提出的其他一些问题,但似乎无法让它为我工作。下面是我一直在尝试使用的代码。
Private Sub IDComboBox_Change()
Dim domainRange As Range
Dim listRange As Range
Dim selectedString As Variant
Dim lastRow As Long
If IDComboBox.ListIndex <> -1 Then
selectedString = IDComboBox.Value
lastRow = Worksheets("test").Range("A" & Rows.Count).End(xlUp).Row
Set listRange = Worksheets("test").Range("A2:A" & lastRow)
For Each domainRange In listRange
If domainRange.Value = selectedString Then
DomainOwnerTestBox.Value = "test"
End If
Next domainRange
End If
End Sub
任何帮助都会很棒。如果您需要更多信息,请告诉我,也请耐心等待,因为我是 VBA.
的新手
谢谢
试试这个代码。它使用 Excel 内置 MATCH 函数在工作表 'test'.
的 A 列中搜索值
Private Sub IDComboBox_Change()
Dim wks As Excel.Worksheet
Dim selectedString As Variant
Dim row As Long
Dim value As Variant
Set wks = Worksheets("test")
If IDComboBox.ListIndex <> -1 Then
selectedString = IDComboBox.value
On Error Resume Next
row = Application.WorksheetFunction.Match(selectedString, wks.Columns(1), 0)
On Error GoTo 0
If row Then
value = wks.Cells(row, 2) '<--- assuming that input values are in column 2.
DomainOwnerTestBox.value = value
Else
'Value not found in the worksheet 'test'
End If
End If
End Sub
我有一个项目,在该项目中,我必须将文本框的值更改为在工作集中根据从组合框 select 编辑的值搜索的值。例如,如果我从组合框中 select "A" 它应该搜索工作表 "test" 找到 A 的输入并将文本框值更改为 1,因为这是为 A 输入的值。我已经看过这里提出的其他一些问题,但似乎无法让它为我工作。下面是我一直在尝试使用的代码。
Private Sub IDComboBox_Change()
Dim domainRange As Range
Dim listRange As Range
Dim selectedString As Variant
Dim lastRow As Long
If IDComboBox.ListIndex <> -1 Then
selectedString = IDComboBox.Value
lastRow = Worksheets("test").Range("A" & Rows.Count).End(xlUp).Row
Set listRange = Worksheets("test").Range("A2:A" & lastRow)
For Each domainRange In listRange
If domainRange.Value = selectedString Then
DomainOwnerTestBox.Value = "test"
End If
Next domainRange
End If
End Sub
任何帮助都会很棒。如果您需要更多信息,请告诉我,也请耐心等待,因为我是 VBA.
的新手谢谢
试试这个代码。它使用 Excel 内置 MATCH 函数在工作表 'test'.
的 A 列中搜索值Private Sub IDComboBox_Change()
Dim wks As Excel.Worksheet
Dim selectedString As Variant
Dim row As Long
Dim value As Variant
Set wks = Worksheets("test")
If IDComboBox.ListIndex <> -1 Then
selectedString = IDComboBox.value
On Error Resume Next
row = Application.WorksheetFunction.Match(selectedString, wks.Columns(1), 0)
On Error GoTo 0
If row Then
value = wks.Cells(row, 2) '<--- assuming that input values are in column 2.
DomainOwnerTestBox.value = value
Else
'Value not found in the worksheet 'test'
End If
End If
End Sub