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

解りづらいかもしれませんが・・・。

複写機の検針用に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」になって欲しいのですが、そういうことは可能ですか?
可能なら、方法を御教示下さい。

A 回答 (4件)

#1です。



#1では一般論としていろいろ書きましたけど、
状況に特化して考えるなら、[訪問時カウント数]が減ることはない、という前提で、
単に、

 =MAX(Sheet1!B:B)

とすれば良いかも。^^;
    • good
    • 0
この回答へのお礼

ありがとうございます。ANo.1で申し上げたとおりです。
助かりました。

お礼日時:2008/03/10 18:17

◆最新月日の訪問時カウント数であれば


=VLOOKUP(MAX(Sheet1!A:A),Sheet1!A:B,2,0)
    • good
    • 0
この回答へのお礼

度々恐れ入ります。
本当にここにはExcelの達人ぞろいで勉強になります。
また、近いうちにこちらの質問から派生した新たな疑問がありますので、もし見かけられましたらご教示よろしくお願いいたします。

お礼日時:2008/03/10 18:19

◆こんな方法はいかがでしょうか?


★sheet2のA1
A1=LOOKUP(10^10,Sheet1!B:B)
    • good
    • 0
この回答へのお礼

ありがとうございます。
これもアリですね。助かります。

お礼日時:2008/03/10 18:18

●甲案


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下方のセルとなります。

以上ご参考まで。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ANo.4がシンプルで問題無しでしたので、その方法を使わせていただきました。

お礼日時:2008/03/10 18:16

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