• 締切済み

Excel2000で縦の折れ線グラフを作成したい

OSはMe,Excel2000を使用しています。以下のようなデータに対し 縦の折れ線グラフを作りたいと思っています。 *値は1~5までです。 項目A 2.4 項目B 2.6 項目C 3 項目D 3 項目E 3.6 項目F 3.6 項目G 3 項目H 2.6 以前の質問No.99995と99431に従い、「こお」さん作のサンプルデータを Excelのユーザー定義グラフとして登録しましたが、 その後グラフウィザードからグラフを作ろうとしても 折れ線グラフが表示されません。 ダウンロードしたサンプルデータのグラフウィザード推移と比べてみると途中の系列タブにおいて”Xの値”、”Yの値”という表示がないため このあたりが問題かと思いますが。 どんな方法でもいいので縦の折れ線グラフを作る方法が お分かりになる方、お願いいたします。

みんなの回答

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

エクセルではできないと思います。 趣味でVBAで折れ線グラフ(データ横向き表示)を作ってみました。VBAにご興味があればやって見てください。 (1)A列にデータ、B列に項目名が入っているとしています。 (2)コードの初めの、定数を決めているところ(「=数字」の個所)は、自分の実情に合わせて、試行して増減してください。 (3)グラフをやりなおす時はtest02を実行すると、データは残り、グラフは消えますので、その後コードを変えたものを実行してください。 (4)Fontとあるところが字体の大小サイズです。 (5)グラフタイトルと凡例は別途ワ―クシートのセルに 入力してください。 (6)締めきりも気にしつつ切り上げやので、ぼろがでるかも知れませんがよろしく。 ------------------------------- Sub test01() d = Range("a1").CurrentRegion.Rows.Count ' MsgBox d l = 280: t = 25 '左上隅の座標 h = 180: w = 400 'グラフエリアの縦横 m = Int(h / d) 'Y軸間隔 q = 5 '目盛線の幅の1/2 yys = 50 'Y軸項目名横幅 yts = 10 'Y軸項目名縦高 xys = 10 'X軸項目名横幅 xts = 40 'X軸項目名縦高 stp = 10 'X軸目盛の飛び数 mx = WorksheetFunction.Max(Range(Cells(1, 1), Cells(d, 1))) ' MsgBox mx n = Int(w / mx) '-------Y軸、X軸 ActiveSheet.Shapes.AddLine l, t, l, t + h ActiveSheet.Shapes.AddLine l, t + h, l + w, t + h '------Y軸目盛 For i = 0 To d - 1 ActiveSheet.Shapes.AddLine l - q, t + i * m, l + q, t + i * m Worksheets("sheet1").TextBoxes.Add(l - q - yys, t + i * m - 5, yys, yts).Select 'MsgBox ActiveSheet.Shapes(Selection.Name).Name Selection.Characters.Text = ActiveSheet.Cells(i + 1, 2) With Selection.Characters.Font .Name = "MS P明朝" .FontStyle = "標準" .Size = 8 End With Selection.ShapeRange.Line.Visible = msoFalse Next i '------X軸目盛 stn = 1 For i = 0 To mx Step stp ActiveSheet.Shapes.AddLine l + i * n, t + h - q, l + i * n, t + h + q ' Worksheets("sheet1").TextBoxes.Add(l + i * n, t + h - q + 10, 8, 10).Select ActiveSheet.Shapes.AddTextbox(msoTextOrientationVerticalFarEast, _ l + i * n, t + h - q + 10, xys, xts).Select Selection.Characters.Text = i With Selection.Characters.Font .Name = "MS P明朝" .FontStyle = "標準" .Size = 5 End With Selection.ShapeRange.Line.Visible = msoFalse stn = stn + 1 Next i '--------Y軸量 Dim x(100) Dim y(100) y(1) = t For i = 2 To d y(i) = y(i - 1) + m Next i '--------X軸量 For i = 1 To d x(i) = Cells(i, 1) * n + l Next i '-------折れ線を引く- For i = 1 To d - 1 ActiveSheet.Shapes.AddLine x(i), y(i), x(i + 1), y(i + 1) Next i '------ End Sub '---------グラフをすべて抹消する-- '---Worksheet・・の行をポイントしてF5キーを押す Sub test02() Worksheets("sheet1").DrawingObjects.Delete End Sub --------------- テスト(データ)はご参考に下記のようなものでしました。テスト済み。 113 大阪地区南 219 京都府下 34 大津 124 奈良 216 明石 126 姫路 113 高槻 231 岡山 145 広島 311 山口 118 下関 215 門司