复选框以修改Word 2010中的文本框

时间:2012-02-10 08:08:24

标签: vba ms-word word-vba

我想要一个MS Word 2010文档,其中有一个复选框(ckeckable)和一个文本框(textfield),根据是否单击该复选框,显示不同的文本。

我尝试过搜索它,但不知何故,所有建议都不是复选框问题的解决方案......

我认为该解决方案应该在Visual Basic中使用?

1 个答案:

答案 0 :(得分:2)

这样的东西?

Private Sub CheckBox1_Change()
    If CheckBox1.Value = True Then
        TextBox1.Text = "Checked!"
    Else
        TextBox1.Text = "Unchecked."
    End If
End Sub

这假设您有一个名为CheckBox1的复选框和一个名为TextBox1的文本框。上面的代码在ThisDocument模块中。

结果类似于此enter image description here和此enter image description here

编辑哎呀,我在Excel中制作了这些照片...哦,好吧,它们看起来几乎完全相同。

编辑您现在已经更改了要求,并希望在取消选中该复选框时“隐藏”文本框。没有正式的方法来“隐藏”文本框,但是你可以删除它的可见特征,即它包含的文本以及“凹陷”的特殊效果,这样它就无法与它的背景区分开来:

Private Sub CheckBox1_Change()
    If CheckBox1.Value = True Then
        TextBox1.Text = "Checked!"
        TextBox1.SpecialEffect = fmSpecialEffectSunken
    Else
        TextBox1.Text = ""
        TextBox1.SpecialEffect = fmSpecialEffectFlat
        'Textbox is now "invisible"
    End If
End Sub