2013-08-02 49 views
0

我是新來的Visual Basic,我不明白這個任務需要什麼對象。顯示/隱藏控件文本框

我有5個「控制文本框」,我想隱藏在Powerpoint中顯示。我有以下的代碼,並收到一個424錯誤:

Private Sub CommandButton1_Click() 
    Activesheet.oleobjects("TextBox2").Visible = False 
    Activesheet.oleobjects("TextBox9").Visible = False 
    Activesheet.oleobjects("TextBox8").Visible = False 
    Activesheet.oleobjects("TextBox7").Visible = False 
    Activesheet.oleobjects("TextBox6").Visible = False 
End Sub 

Private Sub CommandButton2_Click() 
    Activesheet.oleobjects("TextBox2").Visible = True 
    Activesheet.oleobjects("TextBox9").Visible = True 
    Activesheet.oleobjects("TextBox8").Visible = True 
    Activesheet.oleobjects("TextBox7").Visible = True 
    Activesheet.oleobjects("TextBox6").Visible = True 
End Sub 
+0

爲什麼'activesheet' for'powerpoint-vba'?您的問題尚不清楚......添加更多關於您的演示文稿(?)的描述。您可能會添加一些屏幕截圖... –

+0

我錯誤地爲此線程中的所有值輸入了True,並通過刪除「Activesheet.oleobjects()」狀態來解決此問題: TextBox2.Visible = False TextBox2.Visible = True –

回答

1

PowerPoint中沒有表,所以沒有Activesheet對象。那會立即觸發一個錯誤。要簡單地切換可見性,您可以這樣做:

Sub ToggleVisibility() 
    With ActivePresentation.Slides(1) 
     .Shapes("TextBox1").Visible = Not .Shapes("TextBox1").Visible 
     .Shapes("TextBox2").Visible = Not .Shapes("TextBox2").Visible 
     ' and so on 
    End With 
End Sub 
+0

我錯誤地爲這個線程中的所有值輸入了True,並通過移除「Activesheet.oleobjects()」來解決此問題:TextBox2.Visible = False TextBox2.Visible = True - Michael Schaefer 2分鐘前編輯 –