使用VBA复选框显示其他值

如果选中该复选框,则此代码用于放置单词“New”,以及✓选中标记(如果未选中)。使用VBA复选框显示其他

If CheckBox2.Value = False Then 

Cells(3, 3) = ChrW(&H2713) # <-- checkmark ✓

Else: Cells(3, 3) = "New"

End If

然而,目前,这只是地方的“新”字,如果复选框被选中,但如果不是选择它,它不会将一个✓勾选!当他们选择复选框然后取消选择复选框时,我可以得到一个复选标记,但这很麻烦。

我该如何解决这个问题?

回答:

这可能是最简单的&最脏的解决方案:

Private Sub CheckBox1_Click()   

If CheckBox1.Value Then

Cells(3, 3) = "New"

Else

Cells(3, 3) = ChrW(&H2713)

End If

End Sub

您选择复选框时,都会在C3电池将与任何进行更新。有一种更好的方式来做到这一点,但它需要面向对象编程 - Is VBA an OOP language, and does it support polymorphism?

的参考“更好的方式”(免责声明 - 第二个环节是从我的网站):

  • https://rubberduckvba.wordpress.com/tag/userforms/

  • http://www.vitoshacademy.com/vba-the-perfect-userform-in-vba/

以上是 使用VBA复选框显示其他值 的全部内容, 来源链接: utcz.com/qa/263060.html

回到顶部