| 
    
     |  | 先日はありがとうございました。 みなさんが教えてくださったように、変数iの初期化をFor文の中に入れたのですが、
 それだけでは、どうもうまくいきません。
 いろいろためしてみて、
 以下のようなマクロでうまくいったのですが、
 変数cはグラフシートの番号です。
 どうしてこれを「0」にしたらうまくいくのかが、
 分かりません。
 
 このブックには全部で10枚のシートがあって
 その中の9枚のシートのデータから9枚のグラフシートができています。
 一番初めのワークシートが「基本データ」になっています。
 
 
 Sub chartsmente()
 
 Dim mySht As Worksheet
 Dim i As Integer
 Dim c As Integer
 
 c = 0    ←変数cの初期値を「0」にしました。
 For Each mySht In Worksheets
 If mySht.Name <> "基本データ" Then
 mySht.Select
 i = 1    ←変数iの初期化をここにしました。
 Do While Cells(3 + i, "O").Value <> ""
 If mySht.Cells(3 + i, "O").Value > Cells(3 + i, "P").Value Then
 Charts(c).Select
 ActiveChart.SeriesCollection(1).Points(i).Select
 With Selection.Interior
 .ColorIndex = 3
 End With
 mySht.Select   ←これを付け加えました。
 End If
 i = i + 1
 Loop
 End If
 c = c + 1
 Next
 End Sub
 
 よろしくお願いいたします。
 
 
 |  |