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

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

関連記事

  1. Office関連

    文書が互換モードかどうかを判定するWordマクロ

    古いバージョンのWordで作成された文書を開くと、タイトル バーに「互…

  2. Office関連

    [VBA]CommandBars(“○○”).Controls.Addでメニ…

    Officeのユーザインタフェースがリボンに変わってから、下記のように…

  3. Office関連

    ガイドを追加するPowerPointマクロ

    PowerPointで図形の位置を調整するときに役立つガイド機能(ガイ…

  4. Office関連

    [PowerPoint]シェイプの名前を指定して「変形」ができるようになりました。

    PowerPoint 2016で新しい画面切り替え効果「変形」が追加さ…

  5. Office関連

    「いちばんやさしいExcel VBAの教本」レビュー

    VBAの学習者であれば一度は見たことがあるであろう、超有名老舗サイト「…

  6. Office関連

    ちゃうちゃう! 2.0を操作するWordマクロ

    「テキスト比較ソフト「ちゃうちゃう!」がバージョンアップされました。」…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP