簡體   English   中英

如何使用vba按鈕更改當前powerpoint幻燈片上的文本框?

[英]How to change a Textbox on the current powerpoint slide with a button using vba?

我是vba的新手,需要一些幫助。 我正在嘗試為我正在進行的powerpoint演示創建一個模塊。 在演示文稿中,我的一些幻燈片包含兩個文本框,用於顯示兩個不同團隊的分數,以及兩個按鈕,用於為其中一個團隊提供分數。 該模塊應該在按下相應按鈕時更改文本框的文本以顯示團隊的新分數。 在給出積分之后,演示將繼續進行,直到下一張帶有按鈕和文本框的幻燈片,其中應顯示當前分數。

我目前的代碼有幾個問題,但我會幫助兩個人知道,我如何在特定幻燈片上引用文本框。 我知道,“ name = ActivePresentation.SlideShowWindow.View.Slide.Name ”產生一個像“ name = "Slide11 “的字符串,如果幻燈片11是當前幻燈片,我也知道” Slide11.TextBoxTeam1.Text = "Hello World ” “將團隊文本框中的文本設置為”Hello world“。但是” name.TextBoxTeam1.Text = "Hello World" “不起作用。我確定它只是語法,但我不能似乎弄清楚了。

先謝謝您的幫助。

如果我正在讀你的代碼, name是一個字符串變量,其值等於Slide11的名稱。 您無法通過字符串數據類型訪問Slide11的屬性,無論字符串的值是否為幻燈片的名稱。 如果Slide11.TextBoxTeam1.Text = "Hello World"有效並且您想要使用引用該幻燈片的變量替換Slide11 ,那么您需要一個幻燈片對象變量。

Dim name As String
name = ActivePresentation.SlideShowWindow.View.Slide.name

Dim mySlide As Slide
Set mySlide = ActivePresentation.Slides(name)

mySlide.Shapes("TextBoxTeam1").TextFrame.TextRange.Text = "Hello World"

請注意, mySlide.TextBoxTeam1.Text = "Hello World"對我不起作用,而這是: mySlide.Shapes("TextBoxTeam1").TextFrame.TextRange.Text = "Hello World"所以我在代碼中替換了該行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM