2012年2月15日水曜日

vbaでExcelチャートを弄るサンプル

vbaでExcelチャートを弄る簡単サンプル
Dim chartObj As ChartObject
Dim myChart As Chart
        For Each chartObj In someSheet.ChartObjects
            Select Case chartObj.Chart.ChartTitle.Caption
                Case "株価の推移"
                    'なぜか直接chartObj.Chart.SeriesCollectionを参照するとエラー
                    '一旦Chartオブジェクトに参照を移す
                    Set myChart = chartObj.Chart
                    
                    With myChart.SeriesCollection(1) 
                        .XValues = "='共通データ'!$B$2:$B$10"
                        .Values = "='共通データ'!$C$2:$C$10"
                    End With
                
                Case "そのた"
                
            End Select
        Next
上の例はチャートのタイトルで判別する場合、チャートの名前で判断する場合は
Dim chartObj As ChartObject
    Select Case chartObj.Name

ちなみにchartObj.Nameはreadonlyの属性みたい。chartObj.Nameを変更したい場合はExcelのメニュー
レイアウト>グラフ名で変更できます

0 件のコメント:

コメントを投稿