2011年5月24日火曜日

日付の関数 (1)

Basicの日付関連の関数を使用したサンプルコードを下記に記す :
  
Sub ExampleDateFunction1()
       Dim objSheet As Object
       Dim objCell As Object

       objSheet = ThisComponent.CurrentController.ActiveSheet
       '
       'Date ステートメント
       objCell = objSheet.getCellRangeByName("A1")
       objCell.String = "現在の日付"
       objCell = objSheet.getCellRangeByName("B1")
       objCell.String = Date
       objCell = objSheet.getCellRangeByName("C1")
       objCell.Value = Date
       '
       'Year 関数
       objCell = objSheet.getCellRangeByName("A2")
       objCell.String = "現在の日付...「年」"
       objCell = objSheet.getCellRangeByName("B2")
       objCell.String = Year(Date)
       '
       'Month 関数
       objCell = objSheet.getCellRangeByName("A3")
       objCell.String = "現在の日付...「月」"
       objCell = objSheet.getCellRangeByName("B3")
       objCell.String = Month(Date)
       '
       'Day 関数
       objCell = objSheet.getCellRangeByName("A4")
       objCell.String = "現在の日付...「日」"
       objCell = objSheet.getCellRangeByName("B4")
       objCell.String = Day(Date)
End Sub
  
上記マクロの実行結果は下図の通りである :
  
各関数 (ステートメント) についての説明は下記の通りである :
  
1. Date ステートメント
   現在のシステム日付の値の取得、及び、システム日付の設定を行う。
   値を取得する場合の書式は下記の通り :
    
      変数 = Date
  
   ここで、変数 が String 型の場合は、上のコードの例のように日付文字列
   としての値を取得することができる。但し、日付の書式はシステムの設定
   に依存する。
   また、変数 が Long 型の場合は、日付のシリアル値を取得することができる。
   日付のシリアル値については DateSerial 関数の項で詳述する予定である
   ので、ここでは割愛する。
   システム日付の設定を行う場合は、
  
      Date = 日付
  
   ここで、日付 はシステムで設定された書式に準じた日付の文字列値である。
   但し、検証したことがないので、実際にシステム日付が指定した値で変更
   されてしまうかどうかは不明である (本当に変更できてしまったら、ちょっと
   恐ろしいものがある)。
  
2. Year 関数
   書式は下記の通り :
  
      Year(日付の値)
  
   ここで、引数で指定する 日付の値 は、システムの書式に準じた文字列、または
   日付のシリアル値のいずれでも良いようである。
   戻り値は、引数で指定した日付の「年」を表す整数値を返す。
  
3. Month 関数
   書式は下記の通り :
  
      Month(日付の値)
  
   ここで、引数で指定する 日付の値 は、システムの書式に準じた文字列、または
   日付のシリアル値のいずれでも良いようである。
   戻り値は、引数で指定した日付の「月」を表す整数値を返す。
  
4. Day 関数
   書式は下記の通り :
  
      Day(日付の値)
  
   ここで、引数で指定する 日付の値 は、システムの書式に準じた文字列、または
   日付のシリアル値のいずれでも良いようである。
   戻り値は、引数で指定した日付の「日」を表す整数値を返す。
  
この項の「ラベル」に「Basic 関数」と指定したが、実際 Calc で何というのかは不明
なので、用語として正しいかどうかわからないが、セルに指定する関数と区別する
為に、あえてこのネーミングを採用した。

0 件のコメント:

コメントを投稿