PowerPoint VBAでテキストボックスの文字を変更する方法を優しく解説

パソコンパソコン・スマホ教室
スポンサーリンク

プレゼン資料をちょっと改造したくて「ボタンひとつで文字を変えられたらいいな」と思ったこと、ありませんか?実はPowerPointにもVBAという「魔法の小道具」があって、テキストボックスの文字をプログラムでパッと変えられるんです。ここでは、「powerpoint vba change text in textbox」と検索して上位に来る記事を参考にしながら、特にパソコン慣れしていない方にもわかるよう、丁寧にご説明しますね。

スポンサーリンク

VBAでテキストボックスの文字を変える基本の流れ

PowerPointのイメージ

PowerPointのイメージ

「どのスライドの」「どのテキストボックスか」を指さす方法

なんとなくイメージしてほしいのは、「今開いているスライドの中にある『名前付き』テキストボックスを見つけて、そこに文字を書き換える」ってことです。検索上位の記事では、次のような方法が紹介されていますよ。

ここがポイント!

  • スライドを文字列(名前)で呼び出すのではなく、スライドそのものを変数に入れて操作している点が親切でした
  • その変数を通じて .Shapes(“TextBox名”).TextFrame.TextRange.Text に新しい文字を書き込む流れがスッキリしていていいなと思いました

「全部のスライド、全部のテキストボックスに一気に」処理したいとき

また別の記事では、ループを使って全スライド、全テキストボックスを順番に見ていく方法が紹介されています。

ここがポイント!

  • 「Shapes」コレクションの中から、テキストがあるものだけを順に見てくれるから便利です
  • 見つかったらテキストを変える、という手順が一連でスムーズで助かります

初心者さん向け!やさしい言葉で説明します

魔法の力=VBAって何?

VBA(ブイビーエー)は、パワーポイントに「プログラミングの指示」を出せる仕組みです。「この文字を変えてね」ってソフトにお願いするための言葉のようなもの、と考えてください。

どうやって実際に書くの?

例えば「スライド1に書かれているタイトルを“こんにちは!”に替えたい」とすると、こう書く感じです。

  1. まず、今使っているプレゼンファイルを“myPres”という名前に入れます。
  2. それから、「1ページ目のスライドの表題部分」を呼び出します。
  3. その中の文字部分(TextRange.Text)を「こんにちは!」に置き換えます。

すると、まるで「ねえパワポさん、タイトルをこんにちはにしてね」とお願いするような感じで、文字が変わります。意外とかんたんですよ!

ちょっとした独自のストーリー私の“魔法”体験

私も最初、「あれ?どこをどう書けばいいの?」と戸惑って、スライド全部を変えようとして大変な思いをしました。でも、「ActivePresentation」や「Shapes」「TextFrame」という道具を順番に使うイメージを持ったら、だんだん楽しくなってきて、最後は「これ全部自動で変えちゃおう!」とニコニコしながらマクロを動かせるようになりました。

必要な構成まとめ

ステップ 説明
ステップ1 ActivePresentationを変数に入れて全体を扱いやすくする
ステップ2 どのスライドの、どの形(Shape・テキストボックス)かを指定する
ステップ3 TextFrame.TextRange.Text に新しい文字を入れる
ステップ4 必要ならループで全部のスライドや形を順に処理する

よくある質問や疑問

Q. 「Shape.Name」で書いてあるのに変えられないのはどうして?

その理由は、名前がついた「文字列」では操作できないからなんです。名前はただの名札。テキストを変えるには「そのもの(スライドやShape)を自分の手元に(変数に)持ってくる」必要があります。

Q. すべてのスライドのすべてのテキストボックスを一括処理したい!

そういうときは、「For Each sld In ActivePresentation.Slides」→「For Each shp In sld.Shapes」で順番に見ていく方法が便利ですよ。テキストがあるものにだけ処理すれば安心です。

Q. 手作業よりVBAのほうがミスが少ないって本当?

はい、本当です。手で何度も文字を修正していると、どこかで間違えたり、数が多くて疲れたりしますよね。VBAなら一度書いてしまえば、一気に・正確に・楽しく処理できます。私も「全部自動化したら楽でラク…」と感激しました。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ(結論と呼びかけ)

PowerPointのVBAを使えば、「テキストボックスの文字をボタンひとつでパッと変える」なんてことも可能になります。最初は「なんだか難しそう…」と思うかもしれませんが、実際には「ActivePresentation」「Shapes」「TextFrame」「TextRange.Text」といったやさしい言葉を順に扱えば、意外とすぐに扱えるようになりますよ。

もし「ここがわからない」「もっとこういう風にやりたい!」と感じたら、ぜひお気軽にLINEからお声掛けください。他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました