こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルVBA セルの書式につい

ユーザーフォームのテキストボックスに入力した日付(yyyy/mm/ddの形式)をA1セルに入れるとします。

 Range("A1").Value = Me.txt日付

A1セルの表示形式は書式設定でユーザー定義の"d"で表示されるように設定していますが、

テキストボックスに入力した形式のまま(yyyy/mm/dd)でA1セルに表示されてしまいます。

上記のみではNGでしょうか?


ちなみに、yyyy/mm/ddと入力されたA1セルを一旦編集モード([F2]キーを押した状態)にして[Enter]を押すと"d"(書式設定で指定している書式)に変わります。

参考:A1セルの日付をみて別シートの一覧からVlookup関数で値を検索したいところが、yyyy/mm/ddで表示されるためにエラーとなってしまいます)


ご存知の方教えていただきたいです。

投稿日時 - 2012-02-12 23:11:53

QNo.7301703

すぐに回答ほしいです

質問者が選んだベストアンサー

以下のようにしてはどうでしょう。

Range("A1").Value = Me.txt日付
Range("A1").NumberFormat="d"

投稿日時 - 2012-02-13 06:40:04

お礼

回答ありがとうございます><

長らく空いてからのお礼となってしまい申し訳ありません。

教えていただいた通りにやってみたらできました!

お陰で業務改善ツールが1つ作成できました☆

本当にありがとうございます!

投稿日時 - 2012-04-26 09:29:01

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

こんばんは。

>Range("A1").Value = Me.txt日付

以下のどれでも大丈夫と思います。

・Range("A1").Value = Me.txt日付.Value

・Range("A1").Value = Val( Me.txt日付.Value)

・Range("A1").Value = CDate( Me.txt日付.Value)

・Range("A1").Value = DateValue( Me.txt日付.Value)

投稿日時 - 2012-02-13 00:34:30

お礼

いくつもの方法を教えていただきありがとうございます!

1つのことにこれだけの方法があるのだな・・・と勉強になりました。

どれを試しても成功したので、今後のツール作成時にもどんどん参考にさせていただきたいと思いました!

本当にありがとうございます^^

投稿日時 - 2012-04-26 09:31:09

あなたにオススメの質問