2016-10-26 12 views
0

最初のスライドにある3つのTextBoxを削除します。私はこのコードを書いたが、うまくいきません!! これは私のコードです:TextBoxを削除するVBA Powerpoint

Sub deleteTextBox() 
Dim osld As Slide 
Dim oShp As Shape 
Dim oShp1 As Shape 
Dim oShp2 As Shape 
Set osld = ActivePresentation.Slides(1) 
For Each oShp In osld.Shapes 
If oShp.HasTextFrame Then 
If oShp.Left = 20 And oShp.Top = 150 Then 
oShp.Delete 
End If 
End If 
Next oShp 
For Each oShp1 In osld.Shapes 
If oShp1.HasTextFrame Then 
If oShp1.Left = 20 And oShp1.Top = 200 Then 
oShp1.Delete 
End If 
End If 
Next oShp1 
For Each oShp2 In osld.Shapes 
If oShp2.HasTextFrame Then 
If oShp2.Left = 35 And oShp2.Top = 490 Then 
oShp2.Delete 
End If 
End If 
Next oShp2 
End Sub 

はあなたの助け

答えて

0

いただきありがとうございますあなたの形状はまさにあなたのコード内の値ごとに配置されています。あなたが順番にそれらを選択し、イミディエイトウィンドウに次のように入力して確認することができます。

?ActiveWindow.Selection.ShapeRange(1).Left 

?ActiveWindow.Selection.ShapeRange(1).Top 

また、あなたは一度形状をループし、各形状に一度だけ、すべての3つの測位条件を評価することによって、コードを最適化することができます。

+0

私は形状をルーピングして解を見つけます。ありがとう、ジェイミー – Zigouma

関連する問題