プロが教える店舗&オフィスのセキュリティ対策術

エクセルで簡単な引き算の式を入れたのですが、テーブルを使って昇順を降順にすると

あたりまえですが、セルの場所が違うので昇順と降順で式が変わります。

これを昇順でも降順でも変わらないようにするにはどうすればよいでしょうか?

当たり前のこともわからず質問してます。すみませんがよろしくお願いします。

 画像は日経平均の時系列です、これの終値だけに式をいれてるのですが、

どのような式を入れればいいのかわからないので、素人ですがおねがいします。

「エクセルで簡単な引き算の式を入れたのです」の質問画像

A 回答 (5件)

参照セルの指定を"$A$4" のように、"$"付きにしてませんか?


この場合、セルが並び替えられても追従せず、並び替え後の変わった内容を参照するので
計算結果はナニソレ?になります。

A4
のように、"$"なしの記述にすれば、この場合は解決します。
入力式をF2で編集モードにして、カーソルを該当位置まで移動し<f4>を押すと
A4→$A4→A$4→$A$4
とサイクリックに変化するので
A4
のようになったら<Enter>おせば治せます
    • good
    • 0

並べ替えするときは、コピーして値貼り付けし式をなくしてしまうしかないのでは?



ちなみに、添付図に式も表示されているので絶対参照になっていないことはわかります。
計算した結果の列を並べ替えしたいんですよね?
そういったことをきちんと説明しましょう。
    • good
    • 0

前日比 = 1行上の終値 - 現在のセルの行の終値 という計算結果のまま


日付の昇順、降順を切り替えたいということでしょうか?

前日比の各行には下記の式を入れてください。
=IFERROR(INDIRECT("R[-1]C[-1]",FALSE)-INDIRECT("RC[-1]",FALSE),"")
    • good
    • 0

こんな感じでしょうか。


ただし、この式を設定すると何故か書式は「日付」になってしまうので、「標準」に戻してください。
また、エラー処理は、ご自分で・・・。

=F3-VLOOKUP(B3-1,B:F,5,FALSE)
    • good
    • 0

1月5日の次が1月9日ですけど、前日比は 1月9日 - 1月5日 でいいですか?



G2=IF(B2="","",IF(AND(OR(B1="日付",B2>B1),OR(B3="",B2<B3)),IF(B1="日付","",F2-F1),IF(B3="","",F2-F3)))

とか

G2=IFERROR(F2-VLOOKUP(LARGE(B:B,RANK(B2,B:B)+1),B:F,5,FALSE),"")

IFERRORが使えなければ
=IF(ISERROR(F2-VLOOKUP(LARGE(B:B,RANK(B2,B:B)+1),B:F,5,FALSE)),"",F2-VLOOKUP(LARGE(B:B,RANK(B2,B:B)+1),B:F,5,FALSE))
はどうですか?

考え違いしてたらごめんなさい。
    • good
    • 0

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