042474 ランダム
 HOME | DIARY | PROFILE 【フォローする】 【ログイン】

在宅仕事日記

在宅仕事日記

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

Keyword Search

▼キーワード検索

Calendar

Profile

tanpopo3416

tanpopo3416

Favorite Blog

SUGAR CANE INDIGO☆BLUEさん
気楽に行こう♪ モア☆さん
ビミョウな隣人 はるぎぃさん
SOHO翻訳者の仕事部屋 まな!さん

Comments

tanpopo3416@ Re:Excel VBA グループ解除、再グループ化(07/20) 「VBA オートシェイプのグループを再帰的…
jone@ Re:Excel VBA グループ解除、再グループ化(07/20) ワークシート版も考えてみました。 図A,…
tanpopo3416@ Re[1]:Excel VBA グループ解除、再グループ化(07/20) jone さんへ 「オートシェイプをコピーし…
tanpopo3416@ Re:Excel VBA グループ解除、再グループ化(07/20) コメントありがとうございます。 >図…
jone@ Re:Excel VBA グループ解除、再グループ化(07/20) 私も挑戦していました。久しぶりのプログ…

Freepage List

Oct 23, 2023
XML
カテゴリ:Word VBA
追記:2023年12月4日
マクロの記事は下記のサイトで書くことにしました。
Word VBA/マクロ 備忘録


本文やオートシェイプの置換は、「Range.Find.Replacement」を使用します。



スマートアートでは、RangeのメンバーのFindは使用できませんでした。
選択する方法(Selection.Find)もうまくいかず…。


TestRange2のメンバーの「Find」は使えそうですが、戻り値が「TextRange2」なんですよね。
他のFindと全然違うので、難しくて分かりませんでした。



やむを得ずInStrで置換することにしました。
スマートアートは初期設定では行内なので、前面などShape型には対応しておりません。


Sub スマートアート置換()
    Dim shp As Shape, gShp As Shape, inlShp As InlineShape, satNode As SmartArtNode
    Dim rng As TextRange2, satRng As TextRange2
    Dim mae As String, ato As String, txt As String
    Dim cntMae As Long, cntAto As Long, nagasa As Long, c As Long
    
    mae = "■■" '検索キーワード
    ato = "□□" '置換キーワード
    nagasa = Len(mae)
    
    For Each inlShp In ActiveDocument.InlineShapes
        If inlShp.Type = wdInlineShapeSmartArt Then
            For Each satNode In inlShp.SmartArt.AllNodes 
                Set rng = satNode.TextFrame2.TextRange
                txt = rng.Text
                cntMae = 1
                Do While InStr(cntMae, txt, mae) > 0
                    txt = rng.Text
                    cntMae = InStr(txt, mae)
                    If cntMae = 0 Then GoTo Continue
                        rng.Characters(cntMae, nagasa).Text = ato
                Loop
Continue:
            Next
        End If        
    Next
End Sub





お気に入りの記事を「いいね!」で応援しよう

Last updated  Dec 4, 2023 10:17:05 AM
コメント(0) | コメントを書く



© Rakuten Group, Inc.
X