Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7950 / 13644 ツリー ←次へ | 前へ→

【35896】日付の表示形式を設定する 経験1年 06/3/15(水) 16:40 質問[未読]
【35897】Re:日付の表示形式を設定する Blue 06/3/15(水) 16:48 回答[未読]
【35901】Re:日付の表示形式を設定する 経験1年 06/3/15(水) 17:17 質問[未読]
【35904】Re:日付の表示形式を設定する Blue 06/3/15(水) 17:27 回答[未読]
【35905】Re:日付の表示形式を設定する 経験1年 06/3/15(水) 17:55 お礼[未読]

【35896】日付の表示形式を設定する
質問  経験1年 E-MAIL  - 06/3/15(水) 16:40 -

引用なし
パスワード
   すみません、過去ログを検索してもうまくいかないので
教えてください。

B1〜B43まで2006/1/4〜2006/1/31と入力されています。
このデータを2006/01/04〜2006/01/31と表示したいのです。
前後の流れから、VBAでfomat関数を使う必要があります。
以下のコードを作って実行しましたがうまくいきません。

Dim i as Long
Dim Lastrow as Long

Lastrow=Range("A65536").End(xlup).row
for i=1 to Lastrow
cells(i,2).value=Format(Cells(i,2),"yyyy/mm/dd")
next i

よろしくお願い致します。

【35897】Re:日付の表示形式を設定する
回答  Blue  - 06/3/15(水) 16:48 -

引用なし
パスワード
   >Lastrow=Range("A65536").End(xlup).row
B列にしなくても良いのですか?
(これだとA列の最終行を求めている)

フォーマット関数ではなく、セルの書式を変更してみてはどうでしょうか?
> cells(i,2).value=Format(Cells(i,2),"yyyy/mm/dd")
Cells(i, 2).NumberFormatLocal = "yyyy/dd/mm"

【35901】Re:日付の表示形式を設定する
質問  経験1年 E-MAIL  - 06/3/15(水) 17:17 -

引用なし
パスワード
   ▼Blue さん:
ありがとうございます。

試してみましたが、日付が2006/25/01、2006/28/01、2006/28/01・・
のように表示されてしまいました。


>B列にしなくても良いのですか?

A列にもデータが入っているので大丈夫です。

すみません、よろしくお願い致します。

【35904】Re:日付の表示形式を設定する
回答  Blue  - 06/3/15(水) 17:27 -

引用なし
パスワード
   > Cells(i, 2).NumberFormatLocal = "yyyy/dd/mm"
すいません、間違えていました。

"yyyy/mm/dd" ですね。orz

【35905】Re:日付の表示形式を設定する
お礼  経験1年 E-MAIL  - 06/3/15(水) 17:55 -

引用なし
パスワード
   ▼Blue さん:

すみません、そのまま貼り付けたので気が付きませんでした。
ありがとうございましたm(__)m 感激です!!

今後ともご指導頂けると嬉しいです。

7950 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free