[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『PPMグラフのXY軸の交点』(花形)
散布図でPPMグラフをつくってまして、X軸とY軸の交点を平均値の入ったセルから取りたいのですが、、、入力するしか方法はないのでしょうか??
お願いします。
手で入力する、コピペする、(=A1などのように)セルを参照する、などの方法が考えられます。 (ちゅうねん)
データ表を提示できませんか?
ジーコ
以前の(NANA)さんの回答に下記のようなものがありました。
この方法しかないのでしょうか?。
(花形)
X軸との交点にしたい値が A1
Y軸との交点にしたい値が A2 にあるとすると
Sub XY() Dim X As Integer, Y As Integer X = Range("A1") '←実際のセル番地に変更して下さい。 Y = Range("A2") '←実際のセル番地に変更して下さい。
ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScaleIsAuto = False .MaximumScaleIsAuto = False .MinorUnitIsAuto = False .MajorUnitIsAuto = False .Crosses = xlCustom .CrossesAt = X .ReversePlotOrder = False .ScaleType = xlLinear End With
ActiveChart.Axes(xlCategory).Select With ActiveChart.Axes(xlCategory) .MinimumScaleIsAuto = False .MaximumScaleIsAuto = False .MinorUnitIsAuto = False .MajorUnitIsAuto = False .Crosses = xlCustom .CrossesAt = Y .ReversePlotOrder = False .ScaleType = xlLinear End With End Sub
こんな感じです。 マクロの記録をつついただけなので 思いがけないことが起きるかもしれません。
変更したいグラフをアクティブにした状態でに実行して下さい。
1 50000 1.2 2 4000 1 3 10000 0.5 4 30000 0.6 5 20000 0.8 6 30000 -0.2 平均 24000 0.65
1 50000 /1.2 2 4000 /1
3 10000 /0.5
4 30000 /0.6
5 20000 /0.8
6 30000 /-0.2
平均 24000 /0.65
散布図でPPMグラフをつくってまして
ということは、下のグラフになるのでしょうか?
http://briefcase.yahoo.co.jp/bc/taka816jp/lst?&.dir=/d6c5&.src=bc&.view=l
平均値を示すマーカーを表示すればよろしいのでしょうか?
↑どちら様でしょうか? HNを書き込んでくださいな^^ ちなみに、、、 ←ここに、半角スペースを入れると改行等の文章を整形してくれます。 URLなどは、スペース無しで入力するとリンクされます。
入れないと
(ここで改行してます。)
このように繋がってしまいます。
(キリキ)(〃⌒o⌒)b
花形さんの最初にご呈示のテーブルを修正がてら・・・ たぶん、ジーコさんが名前を書き忘れたと思われます。 有益なレスでなくてごめんなさい。
(HANA)
↓↓↓こんな感じで実行させました。
けど、うまく動きません。エラー内容は"実行時エラー6オーバーフローしました。"
となります。"Y = Range("E18")"←この部分が引っかかってます。
それと値によってはうまくいくのですが、X数値軸の交点が"0"になります。
ActiveSheet.ChartObjects("グラフ 18").Activate
ActiveChart.ChartArea.Select Dim X As Integer, Y As Integer X = Range("H18") Y = Range("E18")
ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScaleIsAuto = False .MaximumScaleIsAuto = False .MinorUnitIsAuto = False .MajorUnitIsAuto = False .Crosses = xlCustom .CrossesAt = X .ReversePlotOrder = False .ScaleType = xlLinear End With
ActiveChart.Axes(xlCategory).Select With ActiveChart.Axes(xlCategory) .MinimumScaleIsAuto = False .MaximumScaleIsAuto = False .MinorUnitIsAuto = False .MajorUnitIsAuto = False .Crosses = xlCustom .CrossesAt = Y .ReversePlotOrder = False .ScaleType = xlLinear End With End Sub
(花形)
http://briefcase.yahoo.co.jp/bc/taka816jp/lst?&.dir=/2bdf&.src=bc&.view=l
ジーコ
ごめんなさいね、マクロはよく分からないのですよ。 >思いがけないことが起きるかもしれません。 は、「私にとって」と言うことだったので・・・・。
>"実行時エラー6オーバーフローしました。" 解決できるかどうか分かりませんが、 Dim X As Integer, Y As Integer を Dim X As Variant, Y As Variant に変えてみて下さい。
>それと値によってはうまくいくのですが、X数値軸の交点が"0"になります。 エラーが出ない場合でも交点が0になりますかね? どんな値の時に上手く行かないか分かりますか?
(HANA)
Dim X As Integer, Y As Integer を
Dim X As Variant, Y As Variant に変えてみて下さい。 こちらで一発解消されました。とりあえず、こちらで対応させて頂きます。そしてマクロも頂きます。自分でもマクロを記録させてたのですが、うまくいかなくて、、助かりました。あっそれとジーコさん わかりにくい文章にレスどうもありがとうございました。
解決済みの過去の文章なのですが、変数の宣言を変えるより ROUND関数等使って、有効桁数でまるめを行ってもらった方が 良かったような気がします。
↓にも書きましたが。参照元です。 [[20060612182658]]『散布図の交点に関して』(Pp)
(HANA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.