1
これはExcel VBAクラスの最終プロジェクトの一部です。私は式と結果をMathResultsシートに書き込む電卓アプリを作成しました。私の次のタスクは、結果を受け取り、それらを使ってチャートシートを作成することです。私が下のコードから得ている問題は、添え字が範囲外であることです。ws = Sheets( "MathResults")です。このコードは、ワークシートを選択してデータを書き込むときにうまくいきました。フォーム上のボタンとワークシート上のデータからチャートを作成する方法
Private Sub bttnAddChart_Click()
'variables
Dim dataRange As Range
Dim endRow As Integer
Set ws = Sheets("MathResults")
'find the end of the row
endRow = ws.Range("A:A").Find(What:="", After:=Range("A1")).Row
'set the data range
Set dataRange = ws.Range("B2:B" & endRow)
Charts.Add
With ActiveChart
.ChartType = xlColumnClustered
.Legend.Position = xlRight
.Axes(xlCategory).MinorTickMark = xlOutside
.Axes(xlValue).MinorTickMark = xlOutside
End With
End Sub
これはMathResultsという名前のシートを持っています。すでに述べたように、私はすでにシートにデータを書き込んでおき、ここで問題を引き起こした同じコードでシートを選択しました。 – codingYogi
@codingYogiシート「MathResults」が既に存在する場合、それを含むブックはアクティブなものではない可能性があります。このルーチンを呼び出すときにブック以上のものを開いていますか? –
あなたは正しいです、私は複数のワークブックを開いていますありがとう!何らかの理由で、私は今すぐコードシートを追加しますが、フリーズは空白のチャートにExcelを実行します。これが起こる何らかの理由を考えることができますか? – codingYogi