[[20120622134049]] 『グラフの参照範囲をセルの値から指定』(どらふな) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『グラフの参照範囲をセルの値から指定』(どらふな)

いつもお世話になっています。

  A  B
1 10  50
2 15  45
3 12  42
4 14  45
5 15  46
6 15  50



のような表を折れ線グラフで表示しています。
グラフの参照範囲をA1:A20とB1:B20で指定しています。
使用する用途により、X軸について
20行目までのデータをグラフ表示させたい場合と
5行目までのデータをグラフ表示させたい場合があります。

任意の”E1"あたりに”5”と入力すると5行目までのグラフを
表示できるようなマクロを組みたいです。

どうか、宜しくお願いします。

OS:windows7
エクセル:2007です


マクロではないけど作業列を使う案

C1=IF(ROW()<=$E$1,A1,NA())
D1=IF(ROW()<=$E$1,B1,NA())

C列D列を下に必要なだけフィルコピー
グラフ参照範囲をC列とD列にするとE1の範囲だけグラフ化出来ます。
#N/Aが目障りだけどね
(ottori)


 マクロでない案A

	A	B	C	D	E
1	系列1	系列2	フィルタ		5
2	10	50	TRUE		
3	15	45	TRUE		
4	12	42	TRUE		
5	14	45	TRUE		
6	15	46	TRUE		
7	15	50	FALSE		

 A:B列範囲全体をグラフ化。

 E1に行数

 C列作業列
 C2 =ROW(A1)<=E$1  下へコピー。

 A:C列オートフィルタ。

 C列「TRUE」で絞込み。

 (GobGob)

マクロでない案B
2007が無いので解かりませんが2003だと行の非表示でも出来るみたいです。
(ottori)

マクロを使う案(マナ)

 Sub test()
    Dim i As Long

    i = Range("E1").Value

    With ActiveSheet.ChartObjects.Add(100, 100, 200, 200).Chart
        .ChartType = xlLine
        .SetSourceData Source:=Range("B1:B" & i)
        .SeriesCollection(1).XValues = Range("A1:A" & i)
    End With
 End Sub

マクロを使う案A(マナ)

 グラフが予め作成してあれば、それを選択して実行

 Sub test2()
    Dim i As Long

    i = Range("E1").Value
    If ActiveChart Is Nothing Then Exit Sub
    With ActiveChart
        .ChartType = xlLine
        .SetSourceData Source:=Range("B1:B" & i)
        .SeriesCollection(1).XValues = Range("A1:A" & i)
    End With
 End Sub

『解決しました』(どらふな)

マナさんの「マクロを使う案A」の方法で思い通りにできました。
「作業列を使う案」も勉強になりましたが、ボタン一つで
思い通りにできるマナさんの案で対応させていただきました。

みなさん、ありがとうございました。感謝感謝!


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.