Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10480 / 76734 ←次へ | 前へ→

【71800】Re:データを追加に伴い、グラフの位置を移動したい
発言  kanabun  - 12/4/9(月) 14:35 -

引用なし
パスワード
   ▼ドカ さん:

>D列にデータがある場合について
>(win7 office2003にて)
>
>D列とE列のデータを使って、折れ線グラフを2本書いたときは、グラフは移動しませんでした。

そしたら、
D列か、E列かでセル変更があったら、という条件に変えて、
グラフの系列の数、ループして、変更のあった列がグラフ表示系列になっている
系列だけ更新する----というのはどうでしょ


Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim myCol As Long
  myCol = Target.Column
  Select Case myCol
   Case 4, 5
   Case Else
      Exit Sub
  End Select
  
  Dim r As Range, c As Range
  Dim zz As String, ss As String
  Dim diff As Double
  Dim Ser As Series
  
  With Me.ChartObjects(1)
    For Each Ser In .Chart.SeriesCollection
      zz = Ser.Formula   '現在の系列式
      ss = Split(zz, ",")(2)
      Set r = Me.Range(ss)  '元データ範囲
      If r.Column = myCol Then
        diff = r(r.Count).Top - .Top
        Set r = Excel.Range(r(1), _
          Cells(Me.Rows.Count, r.Column).End(xlUp)) '更新範囲
        Ser.Formula = Replace(zz, ss, r.Address(, , , True)) 'セット
        .Top = r(r.Count).Top - diff 'グラフ移動
        Exit For
      End If
    Next Ser
  End With
End Sub

10 hits

【71795】データを追加に伴い、グラフの位置を移動したい ドカ 12/4/9(月) 8:31 質問
【71796】Re:データを追加に伴い、グラフの位置を移動... kanabun 12/4/9(月) 9:32 発言
【71797】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/9(月) 10:36 発言
【71798】Re:データを追加に伴い、グラフの位置を移動... kanabun 12/4/9(月) 11:12 発言
【71799】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/9(月) 12:32 発言
【71800】Re:データを追加に伴い、グラフの位置を移動... kanabun 12/4/9(月) 14:35 発言
【71801】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/9(月) 16:28 発言
【71803】Re:データを追加に伴い、グラフの位置を移動... kanabun 12/4/9(月) 17:09 発言
【71804】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/9(月) 21:23 発言
【71811】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/11(水) 8:04 お礼
【71812】Re:データを追加に伴い、グラフの位置を移動... kanabun 12/4/11(水) 11:19 発言
【71830】Re:データを追加に伴い、グラフの位置を移動... ドカ 12/4/13(金) 7:47 お礼

10480 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free