重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

こんにちは。

いろいろ考えたのですが、うまくいかず、質問させていただきます。
画像のように、F列にA:Eのなかの一番右に出てきた数字(0を除く)から、
その次に出てきた数字(0を除く)という数式は組めますでしょうか?

宜しくお願い致します。

「Excelで一番右側の数字からその次の数」の質問画像

質問者からの補足コメント

  • すみません・・・
    その次に出てきた数字(0を除く)を引くという数式は組めますでしょうか?

    の誤りです。

      補足日時:2016/12/11 14:36

A 回答 (2件)

F2セルに


=INDEX(A2:E2,LARGE((A2:E2<>0)*COLUMN(A2:E2),1))-INDEX(A2:E2,LARGE((A2:E2<>0)*COLUMN(A2:E2),2))

をコピー&ペーストして
配列数式なので、入力は、Ctrl+Shift+Enter(3つのキーを同時押し)として下さい。
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございました。

やはり、私のレベルでは解決できない問題でした。
大変助かりました。ありがとうございました。

お礼日時:2016/12/11 16:47

ユーザ定義関数で良ければ、こんな感じです。


下記のVBAを標準モジュールに張り付けた後、F2セルに下記の数式を入力して、下へオートフィルでコピーします。

F2セル =mycompute(A2:E2)

Function MyCompute(r As Range) As Variant
Dim i As Long
Dim f As Long
For i = r.Count To 1 Step -1
If r(i).Value <> 0 Then
If f = 0 Then
MyCompute = r(i).Value
Else
MyCompute = MyCompute - r(i).Value
End If
f = f + 1
End If
If f >= 2 Then Exit For
Next i
End Function
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございました。

無事に結果を出す事ができました。
ベストアンサーにさせていただきたかったのですが、
先に回答頂いた方にさせていただきました。

VBAならできるのかなぁ、などと考えてはいたのですが、
全く知識がなかったもので・・・

大変助かりました、ありがとうございました。

お礼日時:2016/12/11 16:58

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