- ベストアンサー
Excel:数値が入力されている最終セルを常に他のシートに自動表示
解りづらいかもしれませんが・・・。 複写機の検針用にexcelで集計および請求書を作成しようと思っています。 sheet1のA1に訪問日、B1に訪問時のカウント数、C1に使用カウント数、D1に控除カウント数、E1に請求カウント数、F1に請求金額と項目名を表示 A2に2007/1/31、B2に50、C2に0、D2に0、E2に0、F2に0 A3に2007/2/28、B3に100、C3に数式[B3-B2]、D3に5、E3に[C3-D3]、F3に[E3*5]という風に毎月累積していきます。 これをsheet2のA1にB列の訪問時のカウント数の最新数値を常に表示させたいのですが、どういう方法がありますか? 例のままですと最新月日が2007/2/28ですので、sheet2のA1の数値は「100」ですが、これが2007/3/31のB列の数値が「500」になったら、sheet2のA1も「500」になって欲しいのですが、そういうことは可能ですか? 可能なら、方法を御教示下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
#1です。 #1では一般論としていろいろ書きましたけど、 状況に特化して考えるなら、[訪問時カウント数]が減ることはない、という前提で、 単に、 =MAX(Sheet1!B:B) とすれば良いかも。^^;
その他の回答 (3)
- maron--5
- ベストアンサー率36% (321/877)
◆最新月日の訪問時カウント数であれば =VLOOKUP(MAX(Sheet1!A:A),Sheet1!A:B,2,0)
お礼
度々恐れ入ります。 本当にここにはExcelの達人ぞろいで勉強になります。 また、近いうちにこちらの質問から派生した新たな疑問がありますので、もし見かけられましたらご教示よろしくお願いいたします。
- maron--5
- ベストアンサー率36% (321/877)
◆こんな方法はいかがでしょうか? ★sheet2のA1 A1=LOOKUP(10^10,Sheet1!B:B)
お礼
ありがとうございます。 これもアリですね。助かります。
●甲案 B列全体について、入力済のセルの数を数えて、 B1セルをその数だけ下方にずらしたセルの値を返す =OFFSET(Sheet1!$B$1,COUNTA(Sheet1!B:B)-1,) たえば、4行目まで入力されていれば、入力済みのセルは4つですから、 目的のセルは、B1セルを基準にして、4-1=3下方のセルとなります。 ただし、COUNTAは、いわゆる「長さゼロの文字列""」もカウントします。 B列に数式で""が入っているような場合はCOUNTAの代わりにCOUNTを使って数値だけを数え、 見出し行など文字列が入っている行の分カウントを調整します。 また、B列の途中に空白セルがあるとカウントがずれてしまうので注意が必要です。 B列の途中に空白セルが存在する可能性がある場合は… ●乙案 B1:B9999の範囲について、空白でないセルの行番号をとり、 その最大の行番号に応じて、B1セルを下方にずらしたセルの値を返す =OFFSET(Sheet1!$B$1,MAX(INDEX((Sheet1!$B$1:$B$9999<>"")*ROW(Sheet1!B1:B9999),))-1,) 例えば、1,3,4行目が入力されていれば、空白でないセルの最大の行番号は4ですから、 目的のセルは、B1セルを基準にして、4-1=3下方のセルとなります。 以上ご参考まで。
お礼
ありがとうございます。 ANo.4がシンプルで問題無しでしたので、その方法を使わせていただきました。
お礼
ありがとうございます。ANo.1で申し上げたとおりです。 助かりました。