更改文本框编写,属性(PowerPoint VBA)

时间:2017-07-28 20:04:33

标签: vba textbox powerpoint

我尝试了以下代码,以更改TextBox'txtboxselection'中写入名称的TextBox字体的大小。例如,如果TextBox'txtboxselection'的文本是'TextBox1',那么它应该改变TextBox1的字体大小。

Private Sub TextBox2_Change()
Dim e_sel As TextBox
Set e_sel = txtboxselection.Text
e_sel.Font.Size = 11
End Sub

但是,遗憾的是它不起作用('编译错误:类型不匹配')。那么有没有办法告诉程序我想要更改“txtboxselection”TextBox中写入的TextBox的字体大小,因为我的工作不起作用。

1 个答案:

答案 0 :(得分:1)

假设您的文本框是PowerPoint幻灯片上的ActiveX控件,您需要查询Shapes集合以获取控件,并检索其OLEFormat.Object以获取TextBox对象:

Private Sub TextBox1_Change()
Dim box1 As TextBox
Set box1 = Me.Shapes("TextBox1").OLEFormat.Object
MsgBox box1.Font.Size
End Sub

获得TextBox对象引用后,您可以随意执行任何操作。所以在你的情况下:

Private Sub TextBox2_Change()
Dim e_sel As TextBox
Set e_sel = Me.Shapes(txtboxselection.Text).OLEFormat.Object
e_sel.Font.Size = 11
End Sub