1つ目のマクロで、テキストファイルのデータをグラフにプロットさせます。
2つ目のマクロで、1つ目のテキストファイルが更新されていればその分のデータを追加し、
追加分グラフにも反映させるようなプログラムを作っています。
1つ目は出来ました。
以下、コード(グラフ作成部分)とイメージです。
VBA
1 'グラフ作成 2 Dim j As Integer 3 Dim rowMax As Long 4 Dim colMax As Long 5 Dim MyRange As Range 6 Dim chartObj As ChartObject 7 Dim Color As String 8 Dim ColorNo As Integer 9 10 rowMax = Cells(Rows.Count, 1).End(xlUp).Row 11 Cells(2, UBound(arr) + 2) = "rowMax" 12 Cells(2, UBound(arr) + 3) = rowMax 13 14 colMax = UBound(arr) 15 16 Set MyRange = Columns("B:F") 17 18 Set chartObj = ActiveSheet.ChartObjects.Add(500, 100, 450, 300) 19 20 With chartObj.Chart 21 '元データ範囲の設定 22 .SetSourceData MyRange, xlColumns 'データ範囲 23 .PlotArea.Interior.ColorIndex = 2 'プロットエリア背景色 城 24 .ChartArea.Fill.BackColor.SchemeColor = 2 '背景色 白 25 .Axes(xlCategory).MinimumScaleIsAuto = True 26 .Axes(xlCategory).MaximumScaleIsAuto = True 27 .HasTitle = True 'タイトル表示 28 .ChartTitle.Text = "Data-Plot" 'タイトル 29 '全系列に対する処理 30 For j = 1 To .SeriesCollection.Count 31 With .SeriesCollection(j) 32 .ChartType = xlXYScatterLinesNoMarkers 'マーカー付き折れ線グラフ 33 .MarkerSize = 2 'マーカーサイズ 34 .Format.Fill.ForeColor.RGB = RGB(255, 255, 255) 'マーカー白抜き 35 .Format.Line.Weight = 1.5 '線の細さ 36 ColorNo = 4 + j 37 .Format.Line.ForeColor.ObjectThemeColor = ColorNo '系列の色 38 Select Case j 39 Case 1, 2, 3 '温度(K) 40 .MarkerStyle = xlMarkerStyleCircle '円形のマーカー 41 .AxisGroup = 1 '主軸 42 Case 4 '電圧(V) 43 .MarkerStyle = xlMarkerStyleX '円形のマーカー 44 .AxisGroup = 2 '第2軸 45 End Select 46 End With 47 Next 48 End With
これに、データを追加してデータ範囲を指定する時に指定方法がわからず上手くグラフを更新できません。
1つ目と同じ指定方法をしても青枠のようになってしまい、x軸が無くなってしまいます。
vba
1 'グラフプロット 2 Dim MyRange As Range 3 Dim Targetchart As ChartObject 4 5 Set MyRange = Columns("B:F") 6 Set Targetchart = ActiveSheet.ChartObjects(1) 7 Targetchart.Chart.SetSourceData Source:=MyRange, PlotBy:=xlColumns 8
詳しい方、どうかご教授頂けませんでしょうか。
宜しくお願い致します。m(_ _)m
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/15 04:36