• ベストアンサー

エクセルマクロの質問です。

こんばんわ!! エクセルマクロのデータ形式で、うまく設定できず困っています。 下記のようにA1セルにユーザーフォームのデータを入力しました。 Range("a1") = UserForm1.TextBox1 TextBox1にはyyyy/mm/dd形式でデータを入力しています。 0を1899/12/31にするのはできるのですが、1899/12/31を0とするデータ(シリアル値?)に直したいのですが、どうすればよいでしょう? アドバイスの程よろしくお願いいたします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

if isdate(me.textbox1) then worksheets("シート名").range("A1") = datevalue(me.textbox1) end if などのようにして,「日付のように見える文字列」を日付に直してセルに入れます。 #念のため いわずもがなですが,セルではシリアル値のデータが入ってくると,通常はyyyy/m/dで表示します。 セルの表示にもyyyy/mm/ddを維持したいときは,事前にセルの書式設定でそのように表示するよう仕込んでおいてください。

osarusan0214
質問者

お礼

なるほど! できました!! datevalueを使えば日付や数値に修正できるのですね!! ありがとうございました!!

すると、全ての回答が全文表示されます。

関連するQ&A