「夫を成功」へ導く妻の秘訣 座談会

こんばんは、エクセル2010を使っています。

それでグラフについて少し解らない所が出てきましたので、教えて頂けませんでしょうか。

あるデータをグラフにしたいのですが、頻繁に元データが変わるので、自動的にグラフの軸を調整してくれるように設定したいのです。

それでグラフの軸の書式設定において、最大値をAV3セルから、最小値AV2セルの数値にしたいのです。

また元データは頻繁に更新されますので、毎回作業があるものは理想ではありません。

詳しい方、具体的に教えて頂けませんでしょうか。

よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

軸の最大値、最小値をセル参照させることはできません。


なのでマクロ以外方法無し。

なんか今日同じような回答を2回くらいしたような気がします。

対象のグラフがあるシートに以下のマクロを挿入(ここではsheet1にグラフがあると仮定)
Private Sub Worksheet_Change(ByVal Target As Range)
 ’ MAXとMINが逆の場合は処理させない
 If Worksheets("sheet1").Range("AV3").Value > Worksheets("sheet1").Range("AV2").Value Then

  ' Y軸の最大値と最小値を変更
  Worksheets("sheet1").ChartObjects("グラフ 1").Chart.Axes(xlValue).MaximumScale = Range("AV3").Value
  Worksheets("sheet1").ChartObjects("グラフ 1").Chart.Axes(xlValue).MinimumScale = Range("AV2").Value
End If
End Sub

念のために"sheet1”と、"グラフ 1"と名前を直指定しています。
複数グラフがある場合は、対象のグラフを選択するとセル番地のとこにグラフ名が出るはず

軸の指定については
xlValue Y軸
xlCategory X軸

2軸あるなら
xlPrimary 主軸
xlSecondary 第2軸
を指定します。

例、第2軸のY軸の最大値を100に設定
略.Chart.Axes(xlValue,xlSecondary).MaximumScale = 100

まあ細かいことはMSDNあたりをどうぞ
https://msdn.microsoft.com/JA-JP/library/office/ …
「エクセル2010 グラフの軸の最大値最小」の回答画像2
    • good
    • 4

こんにちは。



返事をつけるのが遅くなってすみません。

最初に、そのグラフは、前回のような、正規分布の散布図なのですか?それとも、別なものですか?

解答にまで至らぬかもしれませんが、しばらく考えさせていただきたいと思います。

本日は、少し用事がありますから、すぐにとは行きませんが、何かのお手伝いになれば幸いです。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル 0や空白のセルをグラフに反映させない方法

以下の点でどなたかお教えください。

H18.1~H20.12までの毎月の売上高を表に記載し、その表を元にグラフを作成しています。グラフに反映させる表の範囲はH18.1~H20.12の全てです。
そのためまだ経過していない期間のセルが空白になり、そこがグラフに反映され見づらくなります。
データを入力する都度グラフの範囲を変更すればいいのですが、うまく算式や設定等で空白や0円となっているセルをグラフに反映させない方法はありますか?

お手数ですが、よろしくお願いいたします。

Aベストアンサー

売上高のセルは数式で求められているのですよね?
それなら
=IF(現在の数式=0,NA(),現在の数式)
としてみてください。
つまり、0の場合はN/Aエラーにしてしまうんです。N/Aエラーはグラフに反映されません。

QexcelのグラフでY軸の最小値を自動的に。。。

エクセルでグラフを書く際、自動的に
最小値 0
最大値 グラフが入る適当な数
で作成されます。

これを、最小値も自動でグラフが入る適当な数にしたいのですが、方法はありますか?

例えば、1001 1505 1906 ですと、
最小値は 1000
のように。。。

もし 2005 3505 5050 だと
最小値は 2000
みたいな感じです。

以上、よろしくお願いします。

Aベストアンサー

現状では、設定等でそうは出来ないでしょう。
目盛の最小・最大値が自由に決められるのだから、それ以上の希望は我慢せねばと思う。どうしてもやるならVBA等でボタン1発を考えるぐらいしかないでしょう。
グラフエリアをアクチブにして実行のこと。
10,100,1000,10000単位になる。
ボタンのクリックイベントにするのは略している。
計数はB列に有る例。
Sub Macro1()
d = Range("B65536").End(xlUp).Row
m = Application.WorksheetFunction.Min(Range("b1:b" & d))
n = Int(Log(m + 1) / Log(10))
With ActiveChart.Axes(xlValue)
.MinimumScale = 10 ^ n
End With
End Sub

Qエクセル グラフにセルの値を参照した目盛を入れたい

エクセル(Microsoft Office Excel 2007)の(折れ線)グラフで
縦軸・横軸それぞれに、
任意のセルを参照した線(目盛)をいれたいのですが、できるでしょうか。

イメージを添付しましたが、
任意のセルの値<7>を反映した横軸目盛と
任意のセルの値<1月4日>を反映した縦軸目盛をいれたいです。

この任意のセルの値が毎回変わるので、参照でないとダメなのですがいかがでしょうか。

お分かりになる方がいましたら、教えてください。

Aベストアンサー

#ちょっとカブります。すみません。

(横軸と縦軸ともに散布図を使う例)
仮にデータが添付画像、及び以下のような配置だとします。

  A  B  C  D . F  G  H  I
1 日付 数値 横軸 縦軸  横X 横Y 縦X 縦Y
2 1/1  3   7  1/4  12/30 7  1/4 -1
3 1/2  4         1/12 7  1/4 17
4 1/3  6
5 1/4  8


1)C2セルに横軸目盛、D2セルに縦軸目盛
2)F2セルに数式 =MIN(A:A)-2
3)F3セルに数式 =MAX(A:A)+2
4)G2:G3セルに数式 =C2
5)H2:H3セルに数式 =D2
6)I2セルに数式 =MIN(B:B)-2
7)I3セルに数式 =MAX(B:B)+2
8)A2:B11を選択して【散布図(直線)】グラフ作成
9)F2:G3をコピー、グラフ選択して貼り付け
10)H2:I3をコピー、グラフ選択して貼り付け
11)系列1を選択して右クリック[系列グラフの種類の変更]、【折れ線】グラフに変える
12)Y軸の最小値を 0 最大値を 16 に固定
13)X軸の最小値を 2011/1/1 最大値を 2011/1/10 に固定

一応、こんな感じの手順でできます。
(12)、(13)の軸の最小値、最大値の設定はグラフによって都度変えなければいけませんから
できればマクロを使ったほうが良いかもしれません。

Sub test()
  With ActiveSheet.ChartObjects(1).Chart
    With .Axes(xlValue)
      .MinimumScale = WorksheetFunction.Min(Range("B:B")) - 1
      .MaximumScale = WorksheetFunction.Max(Range("B:B")) + 1
    End With
    With .Axes(xlCategory)
      .MinimumScale = WorksheetFunction.Min(Range("A:A"))
      .MaximumScale = WorksheetFunction.Max(Range("A:A"))
    End With
  End With
End Sub

[Alt]+[F11]キー。[VisualBasicEditor]が起動します。
[Alt][i][m]の順押しで[標準モジュール]というものが挿入されます。
カーソルがフォーカスしてる右側の白いウィンドウに上記Sub test()~End Subまでの行をコピー&ペースト。

マクロを実行する時は、グラフがあるシートがアクティブになった状態で
[Alt]+[F8]キー。
「マクロ名」 test を選んで[実行]です。

今回の仮データの配置の場合
アクティブなシートのA列B列のデータを元に、最小値と最大値を設定し
シート上の1番目のグラフの軸設定を変更するマクロです。

#ちょっとカブります。すみません。

(横軸と縦軸ともに散布図を使う例)
仮にデータが添付画像、及び以下のような配置だとします。

  A  B  C  D . F  G  H  I
1 日付 数値 横軸 縦軸  横X 横Y 縦X 縦Y
2 1/1  3   7  1/4  12/30 7  1/4 -1
3 1/2  4         1/12 7  1/4 17
4 1/3  6
5 1/4  8


1)C2セルに横軸目盛、D2セルに縦軸目盛
2)F2セルに数式 =MIN(A:A)-2
3)F3セルに数式 =MAX(A:A)+2
4)G2:G3セルに数式 =C2
5)H2:H3...続きを読む

QEXCEL VBA で現在開いているブックのファイル名を取得する方法

EXCEL2003 VBAで業務を簡素化するために、現在開いているブックのファイル名を取得する方法が分かりません。
作業手順をマクロを使って処理していますが、オリジナルのワークブックをファイル名を変えて保存し、以後、このワークブックを読み込んで使用しています。
このときのVBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり、以後の業務に使用できません。
常にファイル名を取得出来るVBAをどなたか、教えて下さい。

Aベストアンサー

>現在開いているブックのファイル名
 ちょっと曖昧な表現かなぁという気もいたしますが、VBAが書いてあるブックのブック名は
ThisWorkbook.Name
で、現在 "アクティブにして" 操作対象になっているブックの名前は
ActiveWorkbook.Name
ですね。

 しかし、
>VBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり
というような文脈からすると、
ThisWorkbook.Name
の方ですかね。

QEXCEL VBAで計算値を四捨五入、切り上げ、切捨てする方法

ネットで探してみたのですが、計算結果を四捨五入して特定のセルを
返すにはどうしたらいいのでしょうか?

Sub hokangosa()

Dim ZPS As Double
Dim ZPOS As Double
Dim DMN As Double
MsgBox (" >>> 補間誤差自動計算 <<< ")
MsgBox (" >>> 初期値入力します <<< ")
ZPS = InputBox(">>> ステップを入力してください<<<")
ZPOS = Sheet1.Cells(22, 4).Value
DMN = ZPOS / ZPS
Sheet1.Cells(23, 6).Value = DMN
End Sub

ここでDMNの値を四捨五入したいです。

またこれとは別に切上げ、切捨ても教えていただけるとありがたいです。

Aベストアンサー

DMN = Application.WorksheetFunction.Round(ZPOS / ZPS, 0)
で、四捨五入
DMN = Application.RoundDown(ZPOS / ZPS, 0)
で切り捨て
DMN = Application.RoundUp(ZPOS / ZPS, 0)
で切り上げです。

引数で、対象桁を変更できます。

Qエクセル STDEVとSTDEVPの違い

エクセルの統計関数で標準偏差を求める時、STDEVとSTDEVPがあります。両者の違いが良くわかりません。
宜しかったら、恐縮ですが、以下の具体例で、『噛み砕いて』教えて下さい。
(例)
セルA1~A13に1~13の数字を入力、平均値=7、STDEVでは3.89444、STDEVPでは3.741657となります。
また、平均値7と各数字の差を取り、それを2乗し、総和を取る(182)、これをデータの個数13で割る(14)、この平方根を取ると3.741657となります。
では、STDEVとSTDEVPの違いは何なのでしょうか?統計のことは疎く、お手数ですが、サルにもわかるようご教授頂きたく、お願い致します。

Aベストアンサー

データが母集団そのものからとったか、標本データかで違います。また母集団そのものだったとしても(例えばクラス全員というような)、その背景にさらならる母集団(例えば学年全体)を想定して比較するような時もありますので、その場合は標本となります。
で標本データの時はSTDEVを使って、母集団の時はSTDEVPをつかうことになります。
公式の違いは分母がn-1(STDEV)かn(STDEVP)かの違いしかありません。まぁ感覚的に理解するなら、分母がn-1になるということはそれだけ結果が大きくなるわけで、つまりそれだけのりしろを多くもって推測に当たるというようなことになります。
AとBの違いがあるかないかという推測をする時、通常は標本同士の検証になるわけですので、偏差を余裕をもってわざとちょっと大きめに見るということで、それだけ確証の度合いを上げるというわけです。

QExcel 棒グラフに「最大値-最小値」の巾を入れたい

入力しているデータは

横軸 日付
縦軸 測定値

です。
この棒グラフに、
「その日ごとの最大値-最小値の巾」を
_




のように組み込ませたいのです。
どうか教えてください。

Aベストアンサー

すみません、チョット間違ってました。
データの平均:AVERAGE(A1,An):An+1
データの最小値:MIN(A1,An):An+2
データの最大値:MAX(A1,An):An+3
とすると
最大値幅(+)An+4:=An+3 - An+1
最小値幅(-)An+5:=An+1 - An+2
としてY軸誤差範囲を設定してみて下さい。
多分これで大丈夫だと思います。

QEXCELでX軸が時間のグラフを作りたいのですが…

EXCELでX軸に時間、Y軸に温度というグラフを作りたいのですが、
計測時間が等間隔ではないのに折れ線グラフで作るとデータが等間隔で
表示されてしまいました。
いろいろ調べた結果、散布図で作成すればいいということが分かったのですが、
データのない余分な時間の分まで左右に表示されてしまい困っています。
(24時間分の表示がされているようです。)
軸の書式設定で何とかなるのかと思いましたが、グラフを作るのが初めてで
詳しいことが分かりません。
グラフの横軸は8:00~17:00までにしたいのですが、どなたかご存知の方、
教えていただけないでしょうか?

グラフにしたいデータは下記のものです。

時間 ( 温度 )
08:05 ( 17.6)
08:40 ( 24.5)
08:47 ( 38.0)
09:30 ( 75.0)
10:05 ( 70.0)
11:05 ( 68.0)
12:30 ( 90.0)
14:30 ( 50.0)
17:00 (164.0)

EXCELでX軸に時間、Y軸に温度というグラフを作りたいのですが、
計測時間が等間隔ではないのに折れ線グラフで作るとデータが等間隔で
表示されてしまいました。
いろいろ調べた結果、散布図で作成すればいいということが分かったのですが、
データのない余分な時間の分まで左右に表示されてしまい困っています。
(24時間分の表示がされているようです。)
軸の書式設定で何とかなるのかと思いましたが、グラフを作るのが初めてで
詳しいことが分かりません。
グラフの横軸は8:00~17:00までにしたいので...続きを読む

Aベストアンサー

> グラフの横軸は8:00~17:00までにしたいのですが、どなたかご存知の方、
教えていただけないでしょうか?

「軸の書式設定」の「軸のオプション」で、「最小値」と「最大値」を「固定値」に指定して、それぞれの値を入力します。
(Excel2010の設定図を添付します。)

なお、値は時間ですので「シリアル値」で入力する必要があります。

「エクセル グラフ 時間: エクセルの基本操作と小技」
http://excelwaza.seesaa.net/article/371155163.html

QExcelマクロ・グラフエリア・プロットエリアのサイズを変更及び綺麗に並べる

何方か、宜しくお願いします。

質問1
ワークシート上の複数のグラフを選択した状態でマクロを実効して
全てのグラフエリア・プロットエリアを同じサイズに変更するマクロを
教えて下さい。
(下記のコードでは、一つのグラフのプロットエリアのみ変更になります。)

Sub グラフサイズ()
ActiveSheet.ChartObjects("グラフ 1").Activate
ActiveChart.PlotArea.Select 'プロットエリア
With Selection
.Top = 17
.Left = 27
.Width = 463
.Height = 330
End With
Range("A3").Select
End Sub
(参考:http://oshiete.nikkeibp.co.jp/qa780484.html)

質問2
質問1で修正したグラフを3列、行数は任意でワークシート上に綺麗に並べたい
のですが、どのようなコードでしょうか。?(グラフとグラフの間は5ポイント位
隙間を入れたいと思います。グラフ数は20~40位、Excel2000)

何方か、宜しくお願いします。

質問1
ワークシート上の複数のグラフを選択した状態でマクロを実効して
全てのグラフエリア・プロットエリアを同じサイズに変更するマクロを
教えて下さい。
(下記のコードでは、一つのグラフのプロットエリアのみ変更になります。)

Sub グラフサイズ()
ActiveSheet.ChartObjects("グラフ 1").Activate
ActiveChart.PlotArea.Select 'プロットエリア
With Selection
.Top = 17
.Left = 27
.W...続きを読む

Aベストアンサー

こんばんは。Wendy02です。

>プロットエリアサイズは固定出来ないのでしょうか?、私が探した所無いようでしたが?Excelの仕様かな?

ある程度は可能ですが、On Error トラップが必要ですね。つまり、そのまま実行してしまうと、物理的?な数値に合わないと、実行時エラーが発生してしまうのです。だいたい、プロットエリアの大きさは、グラフエリアの90%ぐらいだったかな? だから、理論的に、一旦、プロットエリアの大きさを取って、グラフエリアを変更してしまえば可能だと思うのです。その後で、並びの位置整理すればよいわけですね。でも、そうすると、今度は、グラフ全体の大きさがマチマチになる可能性があるわけです。

それで、最初の私のコードのように、グラフエリアは、余計なものだとして、私は、消してしまったのです。結構、見栄えが良いなって、自負したのですが……。^^;

QエクセルVBAでグラフの線とマーカを設定したい

エクセルVBAでグラフの線とマーカを設定したいです。
グラフの線は無しでマーカの線が有りにしたいのですが、
マクロで記録したコードを見ると
グラフの線、マーカの線ともにFormat.Line.Visibleで指定しています。
実際にコードを記述しても、以下の様になり、グラフの線が表示されてしまいます。
ChartObjects("1").Chart.SeriesCollection(10).Format.Line.Visible = msoFalse

With ChartObjects("1").Chart.SeriesCollection(10).Format.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 102, 0)
.Transparency = 0
End With
グラフの線は無しでマーカの線が有りに設定は出来ないのでしょうか?

Aベストアンサー

With ChartObjects("1").Chart.SeriesCollection(10)
.Format.Line.Visible = msoFalse
.MarkerForegroundColor = RGB(255, 102, 0)
End With

あるいは下記で折れ線のみ塗りつぶしなしになります。
Border.ColorIndex = xlNone


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング