こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ExcelのVBAで、プロジェクトエクスプローラ内のMicrosoft Excel Objectsにある、Sheet●の部分を変更する方法があるのでしょうか

いつも皆様のお力に感服しております。
ExcelVBAのVBE画面で、デフォルトで左に現れる、プロジェクトエクスプローラ内にある、「Microsoft Excel Objects」に繋がって表示される、Sheet1、Sheet2・・・と表示される部分で質問です。

例えば、Sheet1 (AAA)、とか、Sheet7 (合計)などと表示されている部分です。

(1)この「Sheet●(シート名)」の、「Sheet●」の部分を変更することが出来るのでしょうか?
(2)また、それにはどのような意味があるのでしょうか?

もう退社して連絡がとれない人が作成したようなのですが、意図が分からず、困っているところなのです。

投稿日時 - 2007-12-13 17:49:33

QNo.3595532

困ってます

質問者が選んだベストアンサー

こんばんは。

どうも、ヘンに説明すると、混乱しそうな気がしますので、必ず、VBEditor 側を出して試してみながら見てください。Accessでは標準的に知っていることでも、Excelでは、あまりしないようです。

>(1)この「Sheet●(シート名)」の、「Sheet●」の部分を変更することが出来るのでしょうか?

ふつうは、あくまでも、プロジェクトエキスプローラで出てくる、その名称の

「Sheet●(シート名)」の、「Sheet●」は、

オブジェクト名です。そのブックの中の固有のオブジェクトの名称です。便宜的に、Sheet1 と付いているだけです。Access などでは、オブジェクト名は変更しても、Excelで変更する人は少ないです。

並び方は、名称順になっているはずです。しかし、それは、シートの左からの順番ではありません。シートの順番は、Index です。Sheets(1), Sheets(2).....

変更の仕方は、プロパティ(F4を押すと出てくる)の[オブジェクト名]で変更し、本来は、ユニークな名前にしてあげると、シート名を変更されなくても、トラブルがなくても済みます。ですから、標準的に、「Sheet数字」よりも、BaseSheet, CalcSheet,TotalSheet など、特殊な名前にしてあげると本来は良いです。(ただし、長さに制限があったような気がします)

投稿日時 - 2007-12-13 19:32:55

お礼

ありがとうございました!お陰様で、困っていたことが解決できました。とても丁寧で分かり易く、心配りの感じる回答です。本当にありがとうございました。今回のことは大変勉強になりました。今後、使ってみようと思います。

投稿日時 - 2007-12-16 12:31:42

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

#3の回答の補足:
オブジェクト名は、VBAだけに使用されるものです。シート名(エクスプローラ上の名の括弧の中の名称)とは関係がありません。私は、通常、シート名は、Sheet1, Sheet2...としておいて、オブジェクト名を、ユニークな名前にしてあります。だから、仮に、シート名を変更されても、マクロ自体に影響を与えることはありません。シート上の計算式などは、あくまでも、=Sheet1!A1+Sheet2!A1+Sheet3!A1 のようになります。

投稿日時 - 2007-12-13 20:25:08

ANo.2

(1)ブック内のシートの位置を入れ替える
(2)シート番号(シート名)です。
シート番号は左から順に1,2,3とカウント
シート名はシート見出しなので任意の文字列

※Sheet●以外へ変えることは可能ですが、串刺し計算時に管理が難しくなります。
どうしてもというならVBE画面でプロパティを表示して
シートのオブジェクト名を変更してください。

投稿日時 - 2007-12-13 18:29:25

ANo.1

シートの順番を変えてみて下さい。

投稿日時 - 2007-12-13 17:54:47

あなたにオススメの質問