标签:VBA,ActiveX控件
如下图1所示,工作表中有一个名为“TextBox1”的文本框,要将其中输入的数字放置到工作表单元格B8中并转换成日期格式。
图1
可以使用下面的代码:
Worksheets("Sheet3").Cells(8, 2) = Format(Worksheets("Sheet3").OLEObjects("TextBox1").Object.Value, "yyyy-mm-dd")
或者:
With Worksheets("Sheet3")
.Cells(8, 2) = Format(.OLEObjects("TextBox1").Object.Value, "yyyy-mm-dd")
End With
反之,如果要想工作表中的文本框显示单元格中的日期,可使用下面的代码:
With Worksheets("Sheet3")
.OLEObjects("TextBox1").Object.Value = Format(.Cells(8, 2), "yyyy-mm-dd")
End With
有点绕,不过可以试试看!在实际应用开发中,万一碰到这种情况,就可以有现成的代码参考了。看着有点简单,但主要是理解工作表中的ActiveX控件是如何进行引用的,文本框控件中的值是如何转换格式的,既可以熟悉ActiveX控件在VBA中的属性使用,也增加了处理类似情形的经验。