用户窗体根据单元格值更改文本框颜色

时间:2018-07-12 11:51:21

标签: excel-vba textbox userform

我正在尝试根据文本框中的值与C10中的单元格值进行比较来更改用户窗体中文本框的颜色,即,如果文本框值为9而单元格值为10,则颜色为绿色

下面的代码使文本框具有相同的颜色,而不考虑输入的值

Private Sub TextBox16_Change()
If ActiveSheet.Range("C10").Value > TextBox16.Value Then
    Me.TextBox16.ForeColor = &H8000000D
    Me.TextBox16.BackColor = &HFF&
Else
    Me.TextBox16.ForeColor = &HFF&
    Me.TextBox16.BackColor = &H8000000D
End If

End Sub

谢谢

1 个答案:

答案 0 :(得分:1)

尝试一下 If ActiveSheet.Range("C10").Value > CLng(TextBox16.Value) Then
但是您需要添加一些错误处理,因为当文本框为空时,或者在数字以外的其他值时,您最终会遇到“类型错误”错误。