• 締切済み

Excelのグラフの系列の名前

Excelのグラフの系列の名前は、 右クリック>元のデータ で自由に変えられますね。この時例えば、セルB4を指定すると系列1の名前を「気温」というように、B4の中身で表示させられます。 さて、系列2の名前は、系列1の名前の後に「2」を付け加えたいのです。セルの式ルールと同じかと思い、 =B4&”2” としましたが、系列の名前としては使えません。 =B4+”2” もだめでしたし、関数もいくつか試したがだめでした。 C4にあらかじめ2と書いておいて、 =B4:C4 とすれば名前は「気温2」となりますが、 セルには文字数字を入れたくありません。 「気温2」と直接名前をつけるのでなく、あくまでもセルB4の参照にこだわる場合、何か良いアイディアはありますか?? Excel2003です。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

基本的にエクセル全般(グラフも)は、セルにある値をとって(連携をとって)使うような考え方です。それは表計算ソフトの基本だからです。 ですから A.セルの値 B。リテラル値 C.セルの値&リテラル値 などのうちB.,C.は、個別に事項によって、やってみないと判らないと思います。 本質問は良くわからないが、系列の「名前」のところで、C.ができないということらしい。 「名前」のボックスに、関数式はかけないようですね。エクセルが そうしている、と言うことですね。 グラフの質問は、細かい個人的ニーズの質問が多いですが、できないことは(特にグラフで)沢山あります。ほとんどが、まともにはできません。昨日もグラフの質問に答えましたが、それもあちらを立てれば、こちらが立たず式の(欠陥もある)回答でした。 ーー コード 気温1 気温2 a 23 16 b 31 18 c 21 23 d 19 17 の気温1、気温2を式でやるなら ="気温"&COLUMN()-1 でできます。こういう質問でもなさそうですね。 ーー VBAなら グラフをアクチブにして、下記を実行。 Sub Macro1() For i = 1 To 2 ActiveChart.SeriesCollection(i).Name = "気温" & i Next i End Sub とか、B4セルの値と関連づけて、=Cells(4,"B")&i とかに相対化できます。 全角文字にするなら Sub Macro1() For i = 1 To 2 ActiveChart.SeriesCollection(i).Name = "気温" & StrConv(i, vbWide) Next i End Sub 系列名って、凡例のところ絵でますが、そこ以外出ませんよね。 そこを問題にしているのですか。

QoooL
質問者

お礼

ありがとうございました。

QoooL
質問者

補足

ありがとうございます。 系列は、一つのグラフに例えば 1 太郎  C3:C30000 2 次郎  D3:D30000 3 三郎  E3:E30000 4 四郎  F3:F30000 5 五郎  G3:C30000 6 六郎  H3:H30000 を設定していて(右側の数値はセル範囲) 7 太郎2  C30001:C60000 8 次郎2  D30001:D60000 9 三郎2  E30001:E60000 10 四郎2  F30001:F60000 11 五郎2  G30001:G60000 12 六郎2  H30001:H60000 のように、系列1~6の続きのグラフを設定しているので、 各系列に名前を付ける必要があるのです。 しかも太郎が桃太郎に名前変更することもあるから、7の名前は1の名前に連動させたい(でも2を付け加えたい)ということです。 VBAはもう少し勉強してみてうまく活用してみようと思います。参考になりました。

  • x0000x
  • ベストアンサー率52% (67/127)
回答No.2

#1です。 系列名だけを設定したセルを用意し、指定する方法もあります。 たとえば、 Z1=B4 Z2=Z1&2 Z3=Z1&3 元のデータダイアログの「系列」で指定する名前に 系列1に「=Sheet1!Z1」 系列2に「=Sheet1!Z2」 系列3に「=Sheet1!Z3」 とかなら可能です。

QoooL
質問者

お礼

セルには文字数字を入れたくありません と書いたのはZ1~Z3のような「系列の名前のためのセル」を用意したくなかったからです。 ご回答ありがとうございました。 (セルに式を入れる時のように、系列の名前も関数や&などで制御できないか、わかる方からのアドバイスをお待ちしております。)

  • x0000x
  • ベストアンサー率52% (67/127)
回答No.1

>系列2の名前は、系列1の名前の後に「2」を付け加えたいのです。 ="B42" の様に任意の文字列で指定する事はできます。

QoooL
質問者

お礼

「気温2」と直接名前をつけるのでなく と書いたのは、 任意の文字列で指定する 方法以外を知りたかったからです。 ご回答ありがとうございました。

QoooL
質問者

補足

2008年になった現在も、引き続き皆さんからの回答をお待ちしています。よろしくお願いします。

関連するQ&A