|
Excelを開く準備、グラフを作成するために、下記の宣言を行い、
あるデータ範囲をグラフさせようとしています。
Dim xlApp As Excel.Application
Dim xlBoo As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim sheet_bangou As Byte
Dim Gra As ChartObject
Dim Gra1 As Chart
Set xlApp = CreateObject("Excel.Application")
Set xlSheet = xlBoo.Worksheets(sheet_bangou)
(中略) ここまでのsheet_bangou の値は3です。
xlBoo.Worksheets(sheet_bangou).Copy After:=xlBoo.Worksheets(sheet_bangou) 'sheet_bangou が 3 であるWorksheetにあるデータ内容をsheet_bangou が 3 の右にコピーしています。
xlBoo.ActiveSheet.Name = "グラフィック" 'アクティブシート(4番目のシート)の名前をグラフィック に変更します。
sheet_bangou = sheet_bangou + 1 'sheet_bangou を4とする
Set xlSheet = xlBoo.Worksheets(sheet_bangou)
'グラフ化
グラフ化はシート番号が4のところで表示、データ参照時は、
シート番号が4の、Cells(4,3)〜Cells(4,6)と、Cells(8,3)〜Cells(8,6)を指定したい。
すなわち、Cells(5,3)〜Cells(7,6)までは参照範囲に含まれません。
上記を SetSourceData の後で書きたい。
Set Gra = xlSheet.ChartObject.Add(100,100,100,100)
Set Gra1 = Gra.Chart
With Gra1
.SetSourceData xlSheet.Range() ←ここの部分が不明
.HasTitle = True
.ChartTitle.Text = "テスト画面"
(略)
End With
(略)
Cells(4,3)〜Cells(4,6)と、Cells(8,3)〜Cells(8,6)の両方を参照させるためには、
どういう風に書けば良いでしょうか。
.SetSourceData xlSheet.Range(xlSheet.Cells(4, 3), xlSheet.Cells(4,6)) で、
Cells(4,3)〜Cells(4,6)まで参照できますが、
Cells(8,3)〜Cells(8,6)を含んだ書き方をいろいろ書いてみても、
よく、Cells(4,3)〜Cells(8,6)まで全て参照して困っています。
ご教示、ヒントを頂けないでしょうか。
|
|