| 
    
     |  | 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)まで全て参照して困っています。
 
 ご教示、ヒントを頂けないでしょうか。
 
 |  |