Sub ExampleDateFunction2()
Dim objSheet As Object
Dim objCell As Object
objSheet = ThisComponent.CurrentController.ActiveSheet
'
'DateSerial 関数
objCell = objSheet.getCellRangeByName("A1")objCell.String = "2011/5/26のシリアル値 (1)"
objCell = objSheet.getCellRangeByName("B1")
objCell.Value = DateSerial(2011, 5, 26)
'
'DateValue 関数
objCell = objSheet.getCellRangeByName("A2")objCell.String = "2011/5/26のシリアル値 (2)"
objCell = objSheet.getCellRangeByName("B2")
objCell.Value = DateValue("2011/5/26")
'
'WeekDay 関数
objCell = objSheet.getCellRangeByName("A3")objCell.String = "2011/5/26の曜日"
objCell = objSheet.getCellRangeByName("B3")
Select Case WeekDay(DateValue("2011/5/26"))
Case 1
objCell.String = "日曜日"
Case 2
objCell.String = "月曜日"
Case 3
objCell.String = "火曜日"
Case 4
objCell.String = "水曜日"
Case 5
objCell.String = "木曜日"
Case 6
objCell.String = "金曜日"
Case 7
objCell.String = "土曜日"
End Select
End Sub
上記マクロの実行結果は下記の通り :
1. DateSerial 関数
引数に指定した年、月、日の日付のシリアル値を取得する。ここで、
日付のシリアル値とは、1899 年 12 月 30 日 を起点(ゼロ)とした経過
日数を言う。例えば、1900 年 1 月 1 日のシリアル値は 2 となる。上記
起点日以前の日付は負の整数が結果として返される。
書式は下記の通り :
DateSerial(Year, Month, Day)
Year には年を表すゼロ以上の整数を指定する。0 ~ 99 の値を指定
した場合は、1900 ~ 1999 と解釈される。それ以外の年については必ず
4 桁の正の整数を指定すること。
Month には月を表す 1 ~ 12 の整数を指定する。
Day には日を表す 1 ~ 31 の整数を指定する。例えば二月の日付として
30 をこの引数に指定してもエラーにはならない。
この関数の戻り値は、既述の通り、日付のシリアル値を表す整数を返す。
2. DateValue 関数
引数で指定した日付文字列を日付のシリアル値に変換し戻り値として返す。
書式は下記の通り :
DateValue(DateString)
DateString には 1582 年 12 月 1 日から 9999 年 12 月 31 日までの間の
日付を表す文字列を指定する。
この関数の戻り値も、既述の通り、日付のシリアル値を表す整数を返す。
3. WeekDay 関数
引数で指定した日付文字列、または、シリアル値を曜日を表す整数値に
変換する関数。
書式は下記の通り :
書式は下記の通り :
WeekDay(DateSerial)
DateSerial には日付文字列、または、日付のシリアル値を指定する。ヘルプ
等には、シリアル値を指定する、と記述されているが、
WeekDay("2011/5/26")
と指定しても、同じ結果を得ることができる。
戻り値は、1 ~ 7 の整数値を返す。サンプルコードにもあるように、各数値が
表す曜日は下記の通り :
1 : 日曜日
2 : 月曜日
3 : 火曜日
4 : 水曜日
5 : 木曜日
6 : 金曜日
7 : 土曜日
0 件のコメント:
コメントを投稿