| 
    
     |  | ▼KISS さん: 
 >新しいシート作りそこでグラフを作りたいのですが
 
 >  Set ws = sheetsts.Add (ここで止ってしまいます)
 
 とりあえず、↑ 「sheetsts」というものはありません。
 ワークシートを追加するのなら、
 Set ws = Worksheets.Add
 でしょうし、
 グラフシートを追加するのなら、
 Charts.Add
 でしょうけど?
 
 あと、
 あたらしいワークシートを作ってそこに埋め込みグラフを描画するのなら、
 Dim ws As Worksheet
 Dim c As Range
 Dim Cht As Chart
 
 Set ws = Worksheets.Add
 Set c = ws.Range("B2").Resize(20, 6)
 Set Cht = ws.ChartObjects.Add(c.Left, c.Top, c.Width, c.Height) _
 .Chart
 
 という順番で ChartObject(埋め込みグラフ)の下位のChartオブジェクトを
 取得し、その Chart に対してグラフの種類や、元データ範囲をセットする
 ことになります。
 そうすれば、ワークシート上のグラフの場所を指定して埋め込みグラフが
 作成できるので、
 Charts.Add でグラフシートを作成して、それからそのChartをワークシート
 上に「場所」移動する ↓ 手間は不要になります。
 
 > ActiveChart.Location Where:=xlLocationAsObject, Name:="ws Name"
 
 ↑変数とリテラル
 文字列を混同しないように。上は「ws Name」という名前のシートがないと
 エラーになります。 Name:=ws.Name ならとりあえずOKですが。
 
 |  |