SSブログ

アクセス小僧:テキストボックスに日時を表示 [コンピューター]

アクセスのフォームに設置したテキストボックスに日時(和暦年、曜日含む)を

表示させたいと思い、VBAマクロを作りました。

1.和暦年を表示

VBAで和暦年を取得する
http://www.relief.jp/docs/vba-japanese-calendar-year.html

によると「平成30」と表示させたいときは、Format関数の第2引数に「ggge」と指定するようです。

2.曜日を表示

WeekDay関数
http://officetanaka.net/excel/vba/function/WeekDay.htm

によると、WeekDay関数が、曜日に従って1, 2 --- 7の整数を返してくるので、"日"、"月" --- "土"の文字列に変換すれば、いいようです。そこで、日付(yyyy/mm/dd)を"日"、"月" --- "土"の文字列に変換する関数を作りました。

Function UFWeekday1(myDate1 As String)
'【機能】日付を曜日に変換
'【引数】
' myDate1 : 日付(yyyy/mm/dd)
'【変数】
'【実行コード】
  Select Case Weekday(myDate1)
  Case vbSunday
    UFWeekday1 = "日"
  Case vbMonday
    UFWeekday1 = "月"
  Case vbTuesday
    UFWeekday1 = "火"
  Case vbWednesday
    UFWeekday1 = "水"
  Case vbThursday
    UFWeekday1 = "木"
  Case vbFriday
    UFWeekday1 = "金"
  Case vbSaturday
    UFWeekday1 = "土"
  End Select
End Function

3.テキストボックスに西暦年、和暦年、月日、曜日、時間を表示
 Format関数とUFWeekday1関数を使って、テキストボックスに西暦年、和暦年、月日、曜日、時間を表示するマクロを作ります。

Private Sub Form_Current()
  '【イベント】レコード移動
  ' レコードをロードした日時を更新
  [テキスト_ロード日時] = Format(Now(), "yyyy\[ggge""]年""mm\月dd""日[") _
  & UFWeekday1(Now()) _
  & Format(Now(), "\] hh\:nn\:ss")
End Sub

日時データはNow関数で、現在の日時とします。
Format関数の第二引数の書式のエスケープ処理が良く分かりません。。

\[[を文字として表示するため
""]年""]年を文字として表示するため(?)
\月dd""日["解読不能
\::を文字として表示するため(?)


まあ、良く分かってないのですが、上記マクロにて、テキストボックスに日時を表示すると、こうなります。

Access_txtbox01.jpg
ヤバイぜ!(18)  コメント(1) 
共通テーマ:パソコン・インターネット

ヤバイぜ! 18

コメント 1

cheese999

ヤバイぜ! ありがとうございます[__猫]
by cheese999 (2018-02-03 19:58) 

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字(英大文字の「オー」、英小文字の「ユー」、アラビア数字の「ハチ」、アラビア数字の「イチ」、アラビア数字の「ニ」)を入力してください。

Facebook コメント

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。