Excel VBA質問箱 IV

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

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


7857 / 13644 ツリー ←次へ | 前へ→

【36178】グラフの範囲を選択、変更するには? うめ 06/3/23(木) 18:42 質問[未読]
【36181】Re:グラフの範囲を選択、変更するには? とおりすがり 06/3/23(木) 18:51 発言[未読]
【36183】Re:グラフの範囲を選択、変更するには? Kein 06/3/23(木) 20:17 回答[未読]
【36429】Re:グラフの範囲を選択、変更するには? うめ 06/3/30(木) 21:25 質問[未読]

【36178】グラフの範囲を選択、変更するには?
質問  うめ  - 06/3/23(木) 18:42 -

引用なし
パスワード
   初心者です、すいません。

毎月のデータを入力し、グラフに反映させているのですが
毎回グラフのデータ範囲を変更しています。

1月 1 2 3
2月 3 4 5
3月 6 7 8
4月

マクロで、グラフ範囲を〜月から〜月までと選択して変更できるようにすることは可能でしょうか?

宜しくお願い致します

【36181】Re:グラフの範囲を選択、変更するには?
発言  とおりすがり  - 06/3/23(木) 18:51 -

引用なし
パスワード
   >〜月から〜月までと選択して

どのようにして選択する予定ですか?

【36183】Re:グラフの範囲を選択、変更するには?
回答  Kein  - 06/3/23(木) 20:17 -

引用なし
パスワード
   Dim Stm As Integer, Enm As Integer
Dim Dy1 As Long, Dy2 As Long
Dim Get1 As Variant, Get2 As Variant
Dim PltR As Range

With Application
  Do
   Stm = .InputBox("プロットを開始する月を1〜12の数値で入力", _
   Type:=1)
   If Stm = False Then Exit Sub
  Loop While Stm < 1 Or Stm > 12
  Do
   Enm = .InputBox("プロットを終了する月を1〜12の数値で入力", _
   Type:=1)
   If Enm = False Then Exit Sub
  Loop While Enm < 1 Or Enm > 12
  Dy1 = CLng(DateSerial(Year(Date), Stm, 1))
  Dy2 = CLng(DateSerial(Year(Date), Enm, 1))
  Get1 = .Match(Dy1, Range("A:A"), 0)
  Get2 = .Match(Dy2, Range("A:A"), 0)
End With
If Not IsError(Get1) And Not IsError(Get2) Then
  Set PltR = Range(Cells(Get1, 1), Cells(Get2, 4))
  ActiveSheet.ChartObjects(1).Chart.SetSourceData PltR
  Set PltR = Nothing
Else
  MsgBox "該当する日付が見つかりません", 48
End If

A列の項目が日付型であれば、1月1日〜12月1日まであるとして、こんな感じのコード
にすれば良いと思います。

【36429】Re:グラフの範囲を選択、変更するには?
質問  うめ  - 06/3/30(木) 21:25 -

引用なし
パスワード
   新切な書き込みありがとうございます。

〜月から〜月までの選択としましては、
具体的に言うと〜年〜月を、メッセージボックス内に入力するかたちが理想です。

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