为什么我在尝试打开组合框中的下拉列表时出错
Why I get error when trying to open the dropdown list in a combobox
尝试在用户表单的组合框中打开下拉列表时出现不匹配错误
我读过这个:
https://msdn.microsoft.com/en-us/library/aa264979(v=vs.60).aspx
(没看懂。)
获取错误的sub
Private Sub FailureComBox_DropButtonClick()
Dim emptyRow As Long, i As Integer
emptyRow = WorksheetFunction.CountA(Sheets("Fel").Range("A:A")) + 1
For i = 2 To emptyRow
FailureComBox.AddItem Cells(i, "A")
Next i
End Sub
我在以下行中收到不匹配错误:
FailureComBox.AddItem Cells(i, "A")
我的整个用户表单代码
Private Sub BackCB_Click()
Unload Me
UserForm1.Show
End Sub
Private Sub ExitCB_Click()
Unload Me
End Sub
Private Sub FailureComBox_Change()
FailureComBox.Text = FailureComBox.Value
End Sub
Private Sub FailureComBox_DropButtonClick()
Dim emptyRow As Long, i As Integer
emptyRow = WorksheetFunction.CountA(Sheets("Fel").Range("A:A")) + 1
For i = 2 To emptyRow
FailureComBox.AddItem Cells(i, "A")
Next i
End Sub
Private Sub OkCB_Click()
Dim emptyRow As Long
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1
If IsDate(DateTB) = False Then
MsgBox "Var vänlig ange ett korrekt datum"
ElseIf FailureComBox <> "" And StopComBox <> "" Then
MsgBox "Var vänlig välj bara ett stopp eller fel."
Else
Cells(emptyRow, 1).Value = DateTB.Value
If SLD000OB = True Then
Cells(emptyRow, 2).Value = SLD00OB.Caption
If SLD00OB = True Then
Cells(emptyRow, 2).Value = SLD00OB.Caption
If SLD1OB = True Then
Cells(emptyRow, 2).Value = SLD1OB.Caption
If SLD2OB = True Then
Cells(emptyRow, 2).Value = SLD2OB.Caption
End Sub
Dim a As String
For i = 3 To emptyRow
FailureComBox.AddItem a
a = Sheets("StopFel").Cells(i, "D")
Next i
这对我来说已经解决了。显然 .AddItem
在将单元格直接设置为其值时遇到了问题。
尝试在用户表单的组合框中打开下拉列表时出现不匹配错误
我读过这个: https://msdn.microsoft.com/en-us/library/aa264979(v=vs.60).aspx (没看懂。)
获取错误的sub
Private Sub FailureComBox_DropButtonClick()
Dim emptyRow As Long, i As Integer
emptyRow = WorksheetFunction.CountA(Sheets("Fel").Range("A:A")) + 1
For i = 2 To emptyRow
FailureComBox.AddItem Cells(i, "A")
Next i
End Sub
我在以下行中收到不匹配错误:
FailureComBox.AddItem Cells(i, "A")
我的整个用户表单代码
Private Sub BackCB_Click()
Unload Me
UserForm1.Show
End Sub
Private Sub ExitCB_Click()
Unload Me
End Sub
Private Sub FailureComBox_Change()
FailureComBox.Text = FailureComBox.Value
End Sub
Private Sub FailureComBox_DropButtonClick()
Dim emptyRow As Long, i As Integer
emptyRow = WorksheetFunction.CountA(Sheets("Fel").Range("A:A")) + 1
For i = 2 To emptyRow
FailureComBox.AddItem Cells(i, "A")
Next i
End Sub
Private Sub OkCB_Click()
Dim emptyRow As Long
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1
If IsDate(DateTB) = False Then
MsgBox "Var vänlig ange ett korrekt datum"
ElseIf FailureComBox <> "" And StopComBox <> "" Then
MsgBox "Var vänlig välj bara ett stopp eller fel."
Else
Cells(emptyRow, 1).Value = DateTB.Value
If SLD000OB = True Then
Cells(emptyRow, 2).Value = SLD00OB.Caption
If SLD00OB = True Then
Cells(emptyRow, 2).Value = SLD00OB.Caption
If SLD1OB = True Then
Cells(emptyRow, 2).Value = SLD1OB.Caption
If SLD2OB = True Then
Cells(emptyRow, 2).Value = SLD2OB.Caption
End Sub
Dim a As String
For i = 3 To emptyRow
FailureComBox.AddItem a
a = Sheets("StopFel").Cells(i, "D")
Next i
这对我来说已经解决了。显然 .AddItem
在将单元格直接设置为其值时遇到了问题。