Excel VBA質問箱 IV

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

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


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

【17006】グラフデータの範囲の指定 kT/q 04/8/18(水) 16:43 質問[未読]
【17007】Re:グラフデータの範囲の指定 Jaka 04/8/18(水) 16:59 回答[未読]
【17009】Re:グラフデータの範囲の指定 kT/q 04/8/18(水) 17:11 質問[未読]
【17010】Re:グラフデータの範囲の指定 つん 04/8/18(水) 17:13 回答[未読]
【17012】Re:グラフデータの範囲の指定 kT/q 04/8/18(水) 17:22 お礼[未読]

【17006】グラフデータの範囲の指定
質問  kT/q  - 04/8/18(水) 16:43 -

引用なし
パスワード
   エクセルのマクロを今日から使い始めた初心者です。
グラフの作成をマクロで作っているところで,一応のところは
可能なのですが,グラフとして描かせるデータの範囲を,
ワークシート上で指定できるように改造したいと思っています。
現状は,まだ,今日から始めたということで,マクロの自動記録を
使って使用していますが,そのマクロの中をのぞくと,

ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("B2:G2"), PlotBy:= _
xlRows

というコードがあり,この中のRange("B2:G2")がデータ範囲であることから,
これらを指定できればいいのであろうと推察しています。何かご助言を頂けませんか?
よろしくお願いいたします。

【17007】Re:グラフデータの範囲の指定
回答  Jaka  - 04/8/18(水) 16:59 -

引用なし
パスワード
   こんにちは。
こう言う事でよいのでしょうか?

シート名 = "Sheet1"
範囲 = "B2:G2"

Source:=Sheets(シート名).Range(範囲)

【17009】Re:グラフデータの範囲の指定
質問  kT/q  - 04/8/18(水) 17:11 -

引用なし
パスワード
   早速のご返答,ありがとうございます。

>シート名 = "Sheet1"
>範囲 = "B2:G2"
>
>Source:=Sheets(シート名).Range(範囲)

私が考えているのは,Sheet1のデータをクリックすることでデータの始点を
与えたいのです。こんなこと,可能ですか?

【17010】Re:グラフデータの範囲の指定
回答  つん E-MAIL  - 04/8/18(水) 17:13 -

引用なし
パスワード
   こんにちは。

Jaka さん、横から失礼いたしますです。

>こんにちは。
>こう言う事でよいのでしょうか?
>
>シート名 = "Sheet1"
>範囲 = "B2:G2"
>
>Source:=Sheets(シート名).Range(範囲)

私は、シート上で、ユーザーが指定する・・ということかな?
と思ったんですけど・・・こんな感じ?

  Dim r As Range
  
  On Error Resume Next
  Set r = Application.InputBox("範囲を指定してください", Type:=8)
  On Error GoTo 0
  
  If r Is Nothing Then
    Exit Sub
  End If

  ActiveChart.SetSourceData Source:=r, PlotBy:= _
    xlRows

これは、範囲を指定するダイアログを出して、範囲をしてしてもらうって感じなんですけど・・・こういうことなら、一度、InputBoxメソッド(関数もあるけど、メソッドの方がいいと思う)をヘルプで調べて見てください。

【17012】Re:グラフデータの範囲の指定
お礼  kT/q  - 04/8/18(水) 17:22 -

引用なし
パスワード
   ご返答,ありがとうございます。
助かりました。今日から始めたVBAですが,かなり強力ですね。
勉強する気になりました。ありがとうございました。

P.S. この質問箱の返答の早さには驚きました。感謝感激です。

>私は、シート上で、ユーザーが指定する・・ということかな?
>と思ったんですけど・・・こんな感じ?
>
>  Dim r As Range
>  
>  On Error Resume Next
>  Set r = Application.InputBox("範囲を指定してください", Type:=8)
>  On Error GoTo 0
>  
>  If r Is Nothing Then
>    Exit Sub
>  End If
>
>  ActiveChart.SetSourceData Source:=r, PlotBy:= _
>    xlRows
>
>これは、範囲を指定するダイアログを出して、範囲をしてしてもらうって感じなんですけど・・・こういうことなら、一度、InputBoxメソッド(関数もあるけど、メソッドの方がいいと思う)をヘルプで調べて見てください。

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