こんにちは、三流プログラマーKen3です。 今回は、 Cdate関数を利用して、文字列を日付型に変換してみます。 です。/* * 1.今回のキッカケ */
よく、文字列8桁で日付のデータがあって、 これを日付型に代入したい、、ってことありますよね。 "20000804"を日付型に代入したい。 で、関数は、何を使えば、、と探すと、 Cdate(日付文字列) かDateSerial(year, month, day) あと?(何かあるかなぁ?) ここで、普通に、 strMOTO = "20000804" 基準日 = Cdate(strMOTO) とやると、エラーになります。 Cdate("2000-08-04") やCdate("2000/08/04") だと通ります。 う〜ん、日付をあらわす文字列にしないといけないんだぁ。。。 まぁ、いいやで、/* * 2.いろいろあるけど、自分にあった方法で、できればOKかなぁ。 */
有名なMid関数を使って、やる方法を使っていました。
Sub test() Dim strMOTO As String Dim strWork As String Dim 基準日 As Date strMOTO = "20000804" strWork = Mid(strMOTO, 1, 4) & "/" & Mid(strMOTO, 5, 2) & "/" & Mid(strMOTO, 7, 2) 基準日 = CDate(strWork) MsgBox 基準日 End Sub |
Sub test()
Dim strMOTO As String
Dim 基準日 As Date
strMOTO = "20000807"
基準日 = CDate(Format(strMOTO, "@@@@/@@/@@"))
MsgBox 基準日
End Sub |
|
あとは、項目別にMSでお勉強かな? ◆ マイクロソフト サイトの歩き方 ◇ How-To インデックス ◇ FAQ インデックス ◇ スキルレベル別おすすめコンテンツ ◇ テクノロジ マップ ◇ テーマ別技術資料一覧 |
| ※種類が豊富で探し易いです。※在庫ありが48時間以内発送が急ぎで資料や書籍がほしい時、とても助かります。 お奨め本の目次を見るだけでも勉強になったり |