エクセルのA列に数字が入力されていてそれを基にエクセルで折れ線グラフを書くとします。
その折れ線グラフをを近似曲線で近似した場合、「近似曲線の書式設定」の「オプション」にある「グラフに数式を表示する」をチェックすると、
その近似曲線の元になる数式が表示されます。
その数式の計算式をB列に入力すると、近似曲線で得られたY値をB列に入力することができます。
ここで質問ですが、A列の数字を変えると、近似曲線の式そのものが変わってしまうため、B列のY値を得るためにはその都度、得られた式をB列に入力しなければなりません。
A列の数字を変えたとき、前もって設定した近似の種類や次数のまま、自動的にB列の近似式の数字も変更する方法(つまり得られた式を自動でB列に入力する方法)はありますか。
No.4ベストアンサー
- 回答日時:
提示されたマクロですが、特に問題はないと思います。
下記マクロを試してください。
数式が、C1:C10に入力されます。
試しに、セルA1:A10に、1から10の連続値を入れてみてください。
blackleonさんが提示されたマクロの実行結果、つまりB1:B10と同じ値になると思います。
Sub test2()
Dim trdtxt As String
trdtxt = ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Text
trdtxt = Replace(trdtxt, "x ", "x1")
trdtxt = Replace(Replace(Split(trdtxt, "=")(1), "x", "*A1^"), " ", "")
Range("C1:C10").Formula = "=" & trdtxt
End Sub
しかし得られた値は、グラフに表示されている近似曲線の値とはかなりズレがあります。
下記サポート情報に、解説と対処策が載せられています。
(完璧には対処できないようです。)
[XL]近似曲線「多項式近似曲線」について
http://support.microsoft.com/kb/402428/ja
No.3
- 回答日時:
>回答番号:No.2 この回答へのお礼
お礼を頂きましたが、質問が閉じられないのは、解決には至らない、ということですか?
回答が的を外しているのなら、具体的な例を挙げ補足していただければ、再検討してみます。
この回答への補足
ご丁寧にありがとうございます。今いろいろ試行錯誤させていただいております。
お言葉に甘えてもう一つ質問させていただきます。
まず私の目的ですが、あるデータを経時的に取り込んで、その最新のデータの並びを折れ線グラフで表し、それをスムージングして、その各々のXに対応するYの値を得たいということです。
スムージングするので近似式の次数は6次くらいがよいと思っています。
例えばA1からA10まで順に 5,8,9,5,4,7,9,8,10、8というデータが入力されているとして、6次の近似式を作ると
y = 0.0005x6 - 0.0095x5 - 0.0048x4 + 1.1894x3 - 8.8283x2 + 22.406x - 9.9となります。
お示しいただいたマクロを参考にして、この式をB列に入力するマクロを以下のように作ると(Xの値は行数と同じとして順にrow()で置き換えてみました)、X( =行数 )が増えるにしたがって、実際のグラフの値とかけ離れていくのです。
何か間違っているでしょうか。
Sub test()
Dim trdtxt As String
trdtxt = ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Text
trdtxt = Replace(Replace(Split(trdtxt, "=")(1), "x6", "*row()^6"), " ", "")
trdtxt = Replace(trdtxt, "x5", "*row()^5")
trdtxt = Replace(trdtxt, "x4", "*row()^4")
trdtxt = Replace(trdtxt, "x3", "*row()^3")
trdtxt = Replace(trdtxt, "x2", "*row()^2")
trdtxt = Replace(trdtxt, "x", "*row()")
Range("B1:B10").Formula = "=" & trdtxt
End Sub
No.2
- 回答日時:
マクロを組んでみました。
該当グラフをアクティブにしてマクロを実行してください。
実情に合わせて、セル番地、セル範囲等を書き直す必要があります。
線形近似で、1次式と仮定しています。
Sub test1()
Dim trdtxt As String
trdtxt = ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Text
trdtxt = Replace(Replace(Split(trdtxt, "=")(1), "x", "*C7"), " ", "")
Range("C8:G8").Formula = "=" & trdtxt
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 物理学 どうして放物線ですか? 15 2023/06/11 09:53
- Excel(エクセル) Excelの関数について教えてください。 5 2023/07/28 11:27
- Excel(エクセル) エクセルで条件付き書式を使わずにセルの文字の色を変える方法を教えて下さい 8 2023/07/28 01:15
- Excel(エクセル) エクセルで文字列と数字が混在する列に書式設定したい。 3 2022/12/19 09:11
- Excel(エクセル) 【再度】Excelの関数について教えてください。 4 2023/07/28 13:06
- Excel(エクセル) B列に、A列の数字が偶数の場合は1減算した数字、奇数の場合はそのまま数字を自動表示したい 4 2022/04/16 12:01
- Excel(エクセル) エクセルの書式設定の表示形式で設定した文字を文字列としてコピーしたい 1 2022/12/21 10:41
- Excel(エクセル) エクセルの計算式を教えてください 3 2023/03/14 13:48
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Excel(エクセル) Excelのテーブルについて 6 2023/07/07 08:37
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELの近似曲線で対数近似、指...
-
EXCELで作った折れ線グラフのy...
-
Excelの近似曲線について
-
Excelの近似曲線で外れ値(異常...
-
Excelの散布図で近似曲線を表示...
-
excelの近似曲線について
-
Excelで近似曲線の式を表示した...
-
Excelで近似曲線の数値をセルに...
-
エクセルの散布図グラフで二点...
-
エクセル多項式近似について
-
エクセル近似曲線(範囲指定)
-
エクセルで…。
-
エクセルの近似曲線で
-
【エクセル】近似曲線の予測部...
-
2つのデータ系列に対する近似直線
-
Excel近似曲線の仕組みについて
-
近似曲線の設定方法
-
エクセル、散布図でデータの一...
-
エクセルのグラフ作成について
-
エクセルの関数による近似式の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELの近似曲線で対数近似、指...
-
Excelの散布図で近似曲線を表示...
-
エクセルで…。
-
Excelの近似曲線で外れ値(異常...
-
EXCELで作った折れ線グラフのy...
-
excelグラフ R-2乗値について
-
エクセル多項式近似について
-
Excelの近似曲線について
-
Excelで近似曲線の数値をセルに...
-
近似曲線とはどういうものなの...
-
エクセル近似曲線(範囲指定)
-
エクセルの関数による近似式の...
-
Excelで座標から関数をつ...
-
Excelで近似曲線の式を表示した...
-
EXCEL 数式 7E+07x3 の意味は?
-
excelの近似曲線について
-
Excel近似曲線の仕組みについて
-
近似曲線の設定方法
-
エクセルで、グラフ上の近似曲...
-
2つのデータ系列に対する近似直線
おすすめ情報