OpenOfficeで曜日を扱う

OpenOfficeで曜日を表示するには、日付を入力し、Ctrlキーと1を押して書式の設定を行ないます。分類の欄で、日付を選択し表示された書式から選択するか、ユーザー定義を選択し、望む表示形式にあった設定を入力します。

  1. 設定→ aaa  表示形式→月、火、水、木・・・・・・
  2. 設定→ aaaa  表示形式→月曜日、火曜日、水曜日、木曜日・・・・
  3. 設定→ ddd  表示形式→Mon,Tue,Wed,Thu.......
  4. 設定→ dddd  表示形式→Monday,Tuesday,Wednesday,Thursday.......

さて、土曜と日曜は休みですという表を作りたい場合、どうしたらいいでしょうか。
A1セルに 2011/8/28が入って、B1セルには、A1セルをコピーして貼り付け、上に書いた方式で書式設定を行なえば曜日は表示されますが、これはあくまで表示形式として曜日を表示しているのであって、入力されたデータは2011/8/28という日付です。

ここで、次の関数を使います。
関数名:WEEKDAY関数
書式:=WEEKDAY(日付;種類)
何ができる;曜日を番号として扱える
平たく書くと:=WEEKDAY(A1;1) =WEEKDAY(A1;2) =WEEKDAY(A1;0)

種類を変えると、下のように変わります。
種類→ 1 2 0

日曜日 1 7 6
月曜日 2 1 0
火曜日 3 2 1
水曜日 4 3 2
木曜日 5 4 3
金曜日 6 5 4
土曜日 7 6 5
種類を選択することで、作業にあった番号を曜日に割り当てることができます。

土日は休みという表を作りたい場合、種類を2に設定すると便利です。2に設定すると、土日は6、7ということになるので=IF(WEEKDAY(A1;2)>5;"休み";"仕事")で処理できます。

月曜 水曜 金曜は、ミーティングという表を作りたい場合、種類を0に設定すると便利です。
0に設定すると、火木土は、1,3,5ということになるので2で割った余りが1ということになります。=IF(MOD(WEEKDAY(A1;0);2)=1;"ミーティング";"")

このように、WEEKDAY関数で曜日を番号で表示しただけでは、「それで何が楽しいんじゃ」ということになりますが、上の例のように関数を組み合わせることで、役に立ちます。

OpenOfficeでWEEKDAY関数を使ってスケジュールを管理するサンプルファイルはcalc030.odsをダウンロードしてください。
使い方の具体例は、Sheet2に入っています。

送信者 OpenOffice

送信者 OpenOffice