アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBA初心者です。(はじめてから3日目。。。)
もしかすると、すごい簡単なことなのかもしれなくて申し訳ないのですが、質問させてください。

二つの異なるシートのデータを使って、円グラフを作製しようとしています。
ですが、「アプリケーション定義またはオブジェクト定義のエラー」が出てしまいます。
どこが間違っているのかをご教授願えませんでしょうか。
よろしくお願いします。


Sub graph()
Charts.Add
With ActiveChart
.ChartType = xlPie
.SeriesCollection(1).XValues = Worksheets(1).Range(Cells(2, 3), Cells(2, 5))
.SeriesCollection(1).Values = Worksheets(2).Range(Cells(3, 2), Cells(3, 4))
.SeriesCollection(1).Name = Worksheets(1).Cells(1, 1)
.Location where:=xlLocationAsObject, Name:="sheet3"
End With

End Sub

ちなみに、各セルにはちゃんとデータが入っております。
よろしくお願いいたします。

A 回答 (1件)

元のコードをなるべく変えないように


書き換えてみました。
以下のようにすれば、とりあえず動きます。

Sub graph()
With Charts.Add
.ChartType = xlPie
.Location where:=xlLocationAsObject, Name:="Sheet3"
End With
With ActiveChart
'仮のSeriesCollectionを設定
.SeriesCollection.Add Source:=Worksheets(1).Range("A1:B2")
.SeriesCollection(1).XValues = Worksheets(1).Range(Worksheets(1).Cells(2, 3), Worksheets(1).Cells(2, 5))
.SeriesCollection(1).Values = Worksheets(2).Range(Worksheets(2).Cells(3, 2), Worksheets(2).Cells(3, 4))
.SeriesCollection(1).Name = Worksheets(1).Cells(1, 1)
End With
End Sub
    • good
    • 0
この回答へのお礼

なるほど!!!
ありがとうございます!!!
rangeのところにもworksheetsの指定が必要なのですね!!!
勉強になりました、ありがとうございます!!!

お礼日時:2006/03/14 17:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています