3日がかりのその仕事、3分で終わらせる方法教えます!
パソコンスキルの心技体

エクセルVBAで図形を操作するときの注意点

2011年9月14日
  • このエントリーをはてなブックマークに追加
  • follow us in feedly

エクセルマクロ・VBA達人養成塾 小川です。

明日(14日)から、休暇を取って、キューバに行ってきます。

今日は、その前の、最後のブログです。

とはいえ、僕がいない間も、ブログは更新されるよう、ネタは書きためてありますので。
ご安心ください(?)

期待されていた方がどのくらいいるかは分かりませんが ヾ(´ー`)ノ

さてさて、そんなわけで。

今日は、先日のエクセルマクロ・VBAセミナー発展コースで使ったサンプルを、ひとつ紹介。

シート上の図形を操作するプログラムです。以下では、シート「Sheet3」にある複数のオートシェイプのうち、名前が、「角丸四角形 1」ではないものだけを選び、その色を変更しています。

Sub aglegte()
Dim sp As Shape
For Each sp In Worksheets("Sheet3").Shapes
Debug.Print sp.Name
If Not sp.Name = "角丸四角形 1" Then
sp.Fill.ForeColor.RGB = RGB(256, 0, 256)
End If
Next
End Sub

ここで重要なのは、「オートシェイプ」のような図形ものについては、たとえ、今表示されているシート上のものだったとしても、

Worksheets(“Sheet3”).Shapes

のように、「どのシート上の」ということを明示しなくてはならない、ということです。

その点、エクセルのセルを操作するときとは違いますね。

エクセルVBAでのオブジェクト操作を覚えたてのことは、シートを明示しなければならないことをうっかりして、失敗しがちです。
気をつけてくださいね。

キーワード

コメント

6 thoughts on “エクセルVBAで図形を操作するときの注意点

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

最新の記事

人気記事

最新記事

カテゴリ

最新コメント

タグクラウド