Excel Tips by pPoy

トップへ←Top    VBAへVBA  VBA基礎へVBA 基礎  一般へ一般  

Macro シート上の全折れ線グラフの0値を、前後の値で補完する方法
(Excel97,Excel2000,Excel2002)
Excelで折れ線グラフを作成する場合、間に値0のデータがあると、
その部分だけ線が途切れてしまいます。
手動で1個ずつ設定する方法 (こちら) もありますが、埋め込みグラフの量が多いと大変です。

以下のマクロは、ワークシート上の全グラフの 値 0 を補完する方法です。
標準モジュールに以下のマクロを貼り付けてください。
Sub grInterpolate()
'シート上の全折れ線グラフの0値を補完してプロット
'2005/06/11 pPoy
    Dim cht As ChartObject
    
    '全ての埋め込みグラフをループ
    For Each cht In ActiveSheet.ChartObjects
        '0値を補完
        cht.Chart.DisplayBlanksAs = xlInterpolated
    Next cht
End Sub
≪使用方法≫

グラフのあるワークシート上で、メニューバーの 「ツール」−「マクロ」−「マクロ」 から、
grInterpolate」 を実行してください。
≪注意≫
  • この処理は、折れ線グラフと線で結ばれた XY グラフに有効です。
    ただし、全グラフに対してこの処理を実行しますので、本来設定できないはずの
    円グラフ等も設定されてしまいます。(悪影響はありませんが)
    それを避けたい場合は、グラフの種類によって分岐させるコードを追加してください。

  • この処理はグラフの全系列が対象となります。

  • この処理は、「空白」 のセルの値のみを補完します。
    ( Delete キーで削除した状態、もしくは未入力状態のセルです )
    「スペース」 や 「長さ 0 の文字列」 ( "" などの式) がセルに入力されていた場合は
    そのままの値が 0 として表示されます。

  • この作業は元に戻せません。 必ずバックアップを取ってから実行してください。

  • 手動で1つずつ設定する方法は、こちら です。


この頁のTOPへTop
【念の為の注意書きです。】
このページ(下位ページ含む)の全ての物の無断転載を禁止いたします。
又、当ページ(下位ページ含む)に記載されていることは、全て自己の責任において実行してください。

Copyright(C) pPoy 2005-2010