2008年11月13日

図形の名前

またExcelの図形話です。

Excel 2003までは、図形を作成すると自動的に「四角形 1」などの名前が付きました。
でも、この名前はVBAでは確認できず、Nameプロパティを調べても「Rectangle 1」などの英語名が返ってきます。

日本語名のほうは、「ActiveSheet.Shapes("四角形 1")」のようなインデックスで使用することはできますが(英語名も使用可)、条件判断などに使用することはできません。

また、図形の名前は、名前ボックスに表示されている日本語名を打ち変えたり、VBAでNameプロパティを設定するなどして、変更することが可能です。
一度変えたら、「四角形 1」と「Rectangle 1」みたいな“表と裏の関係”はなくなります。
ただし、一度別の名前に変えてしまうと、もう「四角形 1」にも「Rectangle 1」にも戻すことはできなくなります。
(一方で、別の図形にこれらの名前を付けることは可能だったりします。さらに、同じワークシート上の複数の図形に、同一の名前を付けることもできます。)

これは、要するに、従来は図形に関する機能の日本語対応が不十分だったということなのかな、と思います。

Excel 2007では、新しく作成した図形に自動的に付く「正方形/長方形 1」のような名前は、ワークシート上でもVBAでも共通です。
また、一度名前を変えた後で、再び「正方形/長方形 1」に戻すこともできます。

Excel 2007では、図形描画の機能そのものが大きく変更されているので、こんな名前の仕様などは、まあ小さな問題かもしれません。
“改良”には違いないでしょうが、Excel 2003以前で作成した図形を扱うVBAのコードを2007で使用する場合は、こういった点にも注意が必要です。
posted by 土屋和人 at 23:18| Comment(0) | TrackBack(0) | Excel
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/22837737
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック