Office関連

選択中の図形の文字列を蛍光ペンでハイライトするPowerPointマクロ

MSDNフォーラムに「PowerPoint 2016で、マクロで選択中の図形をハイライトすると、文字列の書式が勝手に変わってしまう」といった質問がありました。

確認してみると、たしかに先頭の文字の書式が後の文字にまで反映されてしまっているようです。

Public Sub Sample()
  With ActiveWindow.Selection
    Select Case .Type
      Case ppSelectionShapes, ppSelectionText
        .TextRange2.Font.Highlight = vbYellow
    End Select
  End With
End Sub

PowerPointのバージョンが原因かもしれませんが、他のバージョンでは確認していないので分かりません。

そこで、選択している文字列を一文字ずつハイライトするように処理を変更したところ、書式が勝手に変更されなくなりました。

Public Sub HighlightShapeText()
  Dim char As Office.TextRange2
  
  With ActiveWindow.Selection
    Select Case .Type
      Case ppSelectionShapes, ppSelectionText
        For Each char In .TextRange2.Characters
          char.Font.Highlight = vbYellow
        Next
    End Select
  End With
End Sub

コードが若干長くなってしまいますが、とりあえずはこれで目的が達成できるかと思います。

【アイカツフレンズ!】フレンズスカウト(友希あいね)に参加しました。前のページ

[Win32 API]PowerPointマクロにショートカットキーを割り当てる。次のページ

関連記事

  1. Office関連

    テスト用の文字列を挿入するWordマクロ

    文字列操作を行うマクロを書いているとき、テスト用に「あいうえおかきくけ…

  2. Office アドイン

    [Office用アプリ]アプリを削除する。

    「JavaScriptで作成した作業ウィンドウアプリを検証してみる。」…

  3. Office関連

    「あのコマンドどこだっけ? for Office 2013」の紹介

    Word MVPの新田さんのブログでも紹介していただいている自作フリー…

  4. Office関連

    Visio Onlineの機能をJavaScriptで拡張する方法

    @mokudaiさんからのバトンを引き継ぎまして、「Office 36…

  5. Office関連

    埋め込んだブックへのユーザー入力を活用する

    「Excel Web Appのブック埋め込みを試してみました。」でEx…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP