プロが教えるわが家の防犯対策術!

Openoffice Calcで作った出席簿のような物があるのですが、
最近30日分の出席率を自動計算するようにしたいのです。

それで...基本的な質問カも知れませんが。

1.たとえば、Y2の3つとなりにAB2がありますが、
  Y2と3からAB2を導き出す関数か表現方法があるのでしょうか?

2.1の続きなのですが...。
  Y2から右30個分のセルの値の合計を出す時に、
  =SUM(Y2:BB2)...とするんじゃなくて、
  BB2の部分を関数か、何かの表現方式で表現できないでしょうか?

3.合計計算のスタート位置(今はY2)を他のセルに入れておいて、
  そこを参照して2と同じ事をすることもできますか?
  つまりY2の部分を可変にしたいのですが...。

質問の仕方がまどろっこしく見えるかもしれませんが、
解決方法が分からなくて困っています。
できれば、マクロは使わずに関数だけで処理したいのですが...。

ご存知の方がいらっしゃたら、お助けください。
宜しくお願いいたします。

A 回答 (1件)

> 1.たとえば、Y2の3つとなりにAB2がありますが、


  Y2と3からAB2を導き出す関数か表現方法があるのでしょうか?


=OFFSET(Y2;0;3)

のようにOFFSET関数を利用してください。

2.も同じように

=SUM(Y2:OFFSET(Y2;0;30)

となります。


> 3.合計計算のスタート位置(今はY2)を他のセルに入れておいて、
  そこを参照して2と同じ事をすることもできますか?

たとえば他のセルがY3だとして

=SUM(INDIRECT(Y3):OFFSET(INDIRECT(Y3);0;30)

となります。
    • good
    • 0
この回答へのお礼

有難う御座いました。

試行錯誤はありましたが、希望していた機能を作る事ができました。

表の始めの行に、今日の日付と出席をチェックし始めた日付を入れたセルを作って、
その日数差を入れるセル(F1)を別に作りました。

それから、OFFSET関数を使って29日前から今日までの合計を取るようにしました。
=SUM(OFFSET(H3;0;$F$1-29):OFFSET(H3;0;$F$1))
これを下にコピーしていって、各行のここ30日間の出席日数を計算させるようにしました。

ちょっと格好は悪いですが、これで一応動いているし、個人的な資料なので十分だと思います。

本当に助かりました。有難う御座いました。

お礼日時:2010/10/23 23:32

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