
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
グループ化内の特定の色の図形も処理したいのですか?
すべてのグループ化を解除すれば簡単なのですが、私はマクロが
得意なほうではないので、うまく処理できているか不安ですが。
一応、こちら↓のようなもので処理できそうです。
Sub グループ化した図形を含む色のを変更()
Dim shp As Shape
Dim n, i As Integer
‘ 単独の図形
For Each shp In ActiveDocument.Shapes
‘ 塗りつぶしの色
If shp.Fill.ForeColor = RGB(255, 255, 255) Then
shp.Fill.ForeColor = RGB(0, 0, 0)
End If
‘ 線の色
If shp.Line.ForeColor = RGB(0, 0, 255) Then
shp.Line.ForeColor = RGB(255, 0, 0)
End If
‘ グループ化した図形
If shp.Type = msoGroup Then
n = shp.GroupItems.Count
For i = 1 To n
‘ グループ化した図形内の塗りつぶしの色
If shp.GroupItems(i).Fill.ForeColor = RGB(255, 255, 255) Then
shp.GroupItems(i).Fill.ForeColor = RGB(0, 0, 0)
End If
‘ グループ化した図形内の線の色
If shp.GroupItems(i).Line.ForeColor = RGB(0, 0, 255) Then
shp.GroupItems(i).Line.ForeColor = RGB(255, 0, 0)
End If
Next i
End If
Next shp
End Sub
もっとスマートな書き方があると思います。
私としては、これらを調べるだけでも大変でした。
No.1
- 回答日時:
例えば、こちら↓のようなもので処理します。
Sub アクティブ文書内の図形の色を変更する()
Dim shp As Shape
For Each shp In ActiveDocument.Shapes
If shp.Line.ForeColor = RGB(0, 0, 255) Then
shp.Line.ForeColor = RGB(255, 0, 0)
End If
If shp.Fill.ForeColor = RGB(255, 255, 255) Then
shp.Fill.ForeColor = RGB(0, 0, 0)
End If
Next shp
End Sub
ありがとうございます。図形を挿入して実験するとできました。
しかし変更したいものはすべてグループ化されており、
このコードではグループ化された1つ1つの図形には
適用されませんでした。解決策はないものでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/03 13:18
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/06 13:01
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/11 11:47
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Excel(エクセル) ExcelのVBAコードについて教えてください。 1 2022/06/20 09:22
- その他(Microsoft Office) ワードのマクロについて教えてください。 1 2023/01/22 11:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel組織図を横に展開する方法...
-
エクセルで図形やワードアート...
-
指定範囲内で図形等を削除する...
-
Office365 のExcelでオブジェク...
-
ワードで大量の図形を一括でグ...
-
Illustrator9 縁取り線ナシに...
-
jwCAD 登録した図形を呼び出し...
-
word2010 SmartArtで連絡網作...
-
マクロで選択した図形の選択状...
-
花子の点線
-
図形の特定の色を一括置換する...
-
Excel に貼り付けた図形が、勝...
-
EXCEL セルに配置した図形ごと参照
-
Excel2007で「サイズとプロパテ...
-
ベクターワークスで線を複写
-
パワーポイント(2016)、線を...
-
イラストレータでWEB用に保...
-
Excel 図形を移動させると複写...
-
EXCELでのデータ及び図形...
-
クリッピングマスクの枠の外を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで図形やワードアート...
-
Excel組織図を横に展開する方法...
-
指定範囲内で図形等を削除する...
-
Office365 のExcelでオブジェク...
-
word2010 SmartArtで連絡網作...
-
Excel に貼り付けた図形が、勝...
-
ワードで大量の図形を一括でグ...
-
エクセル マクロで、選択してい...
-
Excel 図形を移動させると複写...
-
オートシェイプで任意のドーナ...
-
パワーポイント(2016)、線を...
-
マクロで選択した図形の選択状...
-
マウスで選択した図形のみVBAで...
-
jwCAD 登録した図形を呼び出し...
-
EXCELでのデータ及び図形...
-
ベクターワークスで線を複写
-
ワードの図形をコピー&ペイス...
-
エクセル コマンドボタン 丸...
-
JPEG画像をイラストレータの塗...
-
ExcelのVBAコードについて教え...
おすすめ情報
例えばXMLのコードを直接表示させて、色の値を一括置換するような方法でも構いません。