|
お世話になります。
あるシート上に図形を描いてその書式を変更するマクロを作っています。
以下が図形を選択して書式を変更するマクロです。
Worksheets("AAA").Activate
ActiveSheet.Shapes.SelectAll '---全ての図形を選択
Set 設定 = Selection.ShapeRange '---選択図形範囲を変数に格納
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.Transparency = 1#
Selection.ShapeRange.Line.Weight = 1#
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoTrue
Selection.ShapeRange.Line.ForeColor.SchemeColor = 64
Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255)
その際、シート上に図形があれば正常に処理されるのですが、図形がない場合
「オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)」
と3行目でエラーになってしまいます。
シート上に図形があれば処理、なければ終了、のようにIF文で作るのかなとも思いますが、シート上に図形があるかどうかを確認するコードがどうしても分かりません。
どなたかよろしくお願いします。
|
|