- Home » 
- Excel講座の総目次 » 
- Excel基本講座の目次 » 
- グラフの参照範囲を自動的に変更したい(SERIES関数)
更新:2025/4/25;作成:2013/10/17
- 下図のような折れ線グラフを作成しています。
 系列を選択すると、数式バーに SERIES関数を使った数式が表示されます。
  
- SERIES関数の構文は =SERIES(name ,category_labels ,values ,order) となっています。
 
| 引数 | 必須/オプション | 指定内容 |  
| name | オプション | 凡例に表示される名前 |  
| category_labels | オプション | 項目軸に表示されるラベル (省略した場合は、連続した整数がラベルとして使用されます
 |  
| values | 必須 | プロットされる値 |  
| order | 必須 | 系列のプロット順 |  
 
  - SERIES関数の中のcategory_labels と values を可変可能な形にすればよいので
 OFFSET関数[構文:=OFFSET(基準, 行数, 列数, [高さ], [幅])]を利用して、可変にすることができそうです。
- この例ではデータ数をカウントしてOFFSET関数の「高さ」に入れればよいと考えました。
  
    - 項目範囲 =OFFSET(Sheet1!$B$2,1,0,COUNT(Sheet1!$C:$C),1)
 データA =OFFSET(Sheet1!$C$2,1,0,COUNT(Sheet1!$C:$C),1)
 データB =OFFSET(Sheet1!$D$2,1,0,COUNT(Sheet1!$C:$C),1)
- これらの数式に名前を付けます。
    
      - [数式]タブの[名前の管理]を実行します。
  
- [新規作成]ボタンをクリックします。
  
- 名前に「項目範囲」と入力しました、範囲で「Sheet1」を選択しました。
 参照範囲に数式 =OFFSET(Sheet1!$B$2,1,0,COUNT(Sheet1!$C:$C),1) を入力しました。
   
        - 同様にプロット範囲にデータA、データBと名前を付けた数式を登録しました。
  
  
 
 
 
- グラフの数式をこれらの登録した名前を使ったものに編集します。
  
    - 系列Aを選択して、数式を =SERIES(Sheet1!$C$2,Sheet1!項目範囲,Sheet1!データA,1) としました。
  
- 系列Bを選択して、数式を =SERIES(Sheet1!$D$2,Sheet1!項目範囲,Sheet1!データB,2) としました。
  
 
- グラフの参照範囲が可変になったかを確認してみます。
  
    - データを削除してみました。
    
 セル範囲B11:D15をクリアしました。グラフも5月9日以降のデータが消えました。
- データを追加してみました。
    
 B16:D19のデータを追加しました。グラフも5月14日以降が追加されました。
 
- データリストがあらかじめ作成されているケースです。
 さらに、途中のデータが歯抜けになっているケースではどうすればよいのでしょうか?
- 下図のように、途中のデータがところどころ抜けています。
   
- データ数をカウントする方法を変更します。
 データの最下行を MAX(MATCH(10^99,$C:$C),MATCH(10^99,$D:$D)) で求めて、C,D列の大きい方を使うことにしました。
- 項目範囲2:=OFFSET($B$2,1,0,MAX(MATCH(10^99,$C:$C),MATCH(10^99,$D:$D))-2,1)
 データA2:=OFFSET($C$2,1,0,MAX(MATCH(10^99,$C:$C),MATCH(10^99,$D:$D))-2,1)
 データB2:=OFFSET($D$2,1,0,MAX(MATCH(10^99,$C:$C),MATCH(10^99,$D:$D))-2,1)
- データの開始が3行目なので、データ(数値データ)の最下行から -2 として調整しています。
      
 
- それぞれの名前にそれぞれの数式を登録します。(手順は上記と同様ですので省略します)
    
 
- 下図の例は「Sheet3」を使っています。
    
      - =SERIES(Sheet3!$C$2,Sheet3!項目範囲2,Sheet3!データA2,1)
      
- =SERIES(Sheet3!$D$2,Sheet3!項目範囲2,Sheet3!データB2,2)
    
   
 
- データを追加してみます。
  
    - 期待したようにプロット範囲が変化しました。
   
 
スポンサードリンク
Home|Excel講座の総目次|Excel基本講座の目次|グラフの参照範囲を自動的に変更したい(SERIES関数)
PageViewCounter

Since2006/2/27