[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBAで日付形式を変更して、数値にしたい』(みみ)
ある範囲に日付(yyyy/mm/dd)が入っているのですが、
日付でなく、数値に変換したいです。(yyyymmddにしたい。)
すみません、変数などもそのまま書きますが
Range(Cells(j, 13), Cells(j + k, 16)).NumberFormatLocal = "yyyymmdd"
これでは見た目はyyyymmddになりましたが、日付形式のままで、ダメでした。
どうしたら数値になるのでしょうか。
教えて下さい。
エクセル2003
WindowsXP
これで出来るでしょうか。 With Range(Cells(j, 13), Cells(j + k, 16)) .Value = CLng(Application.Text(.Value, "YYYYMMDD")) .NumberFormatLocal = "0" End With (Mook)
こんな感じでいいんじゃないの?
With Range(Cells(j, 13), Cells(j + k, 16)) .NumberFormat = "0" .Value = Evaluate("if(" & .Address & "<>"""",text(" _ & .Address & ",""yyyymmdd""),"""")") End With (seiya)
ありがとうございました!
(みみ)
解決後ですが、 With Range(Cells(j, 13), Cells(j + k, 16)) If IsDate(.Value) Then .Value = CLng(Application.Text(.Value, "YYYYMMDD")) .NumberFormatLocal = "0" End If End With ということかな?おそらくデータが日付じゃない(あるいは空)ところで エラーになっていたかと思います。 (Mook)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.