• 締切済み

エクセルのユーザーフォームのテキストボックスに日付が入力できない

いつもお世話になります。初心者ですのでよろしくお願いします。 初めてエクセルのユーザーフォーム作成に挑戦しています。 フォームに日付を入力するためのテキストボックスを配置したのですが、yyyy/m/dで入力しようとして2006/8まで入力すると勝手に2006/8/1/と入力されてしまいます。2006/8/25と入力できるようにするにはどうしたらよろしいでしょうか? よろしくお願いします。

みんなの回答

回答No.1

haasan99さん、こんにちは。 仰る事が良く分からないのですが、 そのテキストボックスに6文字入力するとフォーカスが次のコントロールに移動して、 入力したテキストボックスの表示が変わってしまうと言うことでしょうか? テキストボックスを作成しただけですとそのような動作は考えにくいので、何らかの プロパティを設定していると思います。 以下のどれか1つをお試しください。 1.新たにテキストボックスを作成し直し、必要なプロパティのみ設定してください。 2.そのテキストボックスのプロパティを下記のように変更してください。   AutoTab = False  'フォーカスが自動的に移動しないようにします   MaxLength = 0   '入力桁数の制限を外します ※ご質問の意味が異なる場合は無視してください。

haasan99
質問者

お礼

早速のご回答ありがとうございました。 当該テキストボックスにIsDate関数を設定していたのですが、それを解除したところ入力できるようになりました。ご回答がヒントになりました。ありがとうございました。

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

関連するQ&A

  • エクセルのユーザーフォームの日付を和暦で表示したい

    いつもお世話になります。 エクセルのユーザーフォーム作成に初めて挑戦しております。 ワークシートに日付の元データがあり、ユーザフォームにテキストボックスを配置しその日付データを表示させています。(例:2006/8/3) やりたいことは、そのユーザーフォームにもうひとつ別のテキストボックスを作成し上記の日付データを和暦で自動的に表示させたいのです。(例:上記のテキストボックスが2006/8/3の場合、こちらのテキストボックスはH18.8.3と表示) 初心者ですが、よろしくお願いします。

  • エクセルVBA フォームのテキストボックスの入力規則

    エクセル2000を使用しています。 VBAでフォームを作成しています。日付の入力項目をテキストボックスで 作りたいのですが、”yyyy/mm/dd”の形式で入力するようテキストボックスの中に表示し、それ以外の入力形式を制限するにはどのようにしたらよいでしょうか。

  • カレンダーフォームの日付をユーザーフォームに登録したい

    ユーザーフォームにいくつかの入力欄としてテキストボックスを作成しました。 その中に日付を入力したい欄があるため同じユーザーフォーム内にカレンダーを作成しました。 このカレンダーをクリックした日付がユーザーフォーム内の任意のテキストボックスに入力されるようにしたいのですが、可能でしょうか? 教えてください。よろしくお願いします。

  • EXCELのユーザーフォームで入力規制をしたい

    EXCELのユーザーフォームで、テキストボックスに、例えば「日付のみ入力できる」のような入力規制をしたいのですが、プロパティのどこかでできるのでしょうか?

  • エクセルユーザーフォームの日付操作を教えてください。

    エクセルユーザーフォームの日付操作を教えてください。 テキストボックスにスピンボタンで日付を入力し、ワークシートに転記するとシリアル値ではなくテキストで転記されます。ワークシートの日付処理に反映されませんので良い方法があれば教えてください。(mm/ddの入力でも良いですスピンボタンにこだわりません)

  • ユーザーフォームに入力したデータを保持する方法

    VBA初心者です。いろいろ調べて徐々に進められていますが、、 こちらもなかなか見つからなかったので質問させていただきます。 現在、ユーザーフォームにテキストボックスをいくつか配置し、 さまざまな計算などをさせて、最終的にエクセルシートに反映させる。 といったことが出来るようにプログラムをしています。 ユーザーフォームのテキストボックスに一度入力したものを、 エクセルシートを閉じるまで残すことはできるでしょうか? 一度、×ボタンで閉じてしまうと、次に呼び出したときには初期の状態になってしまいます。 ユーザーフォームに入力し、エクセルシートで確認、 その後 再度ユーザーフォーム呼び出して修正する といった作業をするために、一度入力したものが消えないようにしたいです。 よろしくお願いいたします。

  • ユーザーフォームのテキストボックスについて

    ユーザーフォームのテキストボックスを使ってシートにデータを転記しています。 テキストボックスに日付を5/10のような形式で入力し、表示をH22.5.10と変換させるようにしています。 Private Sub TextBox1_AfterUpdate() x = TextBox61Text TextBox1.Text = Format(x, "ge.m.d") End Sub これを転記した時に、そのまま文字列として貼り付けられるため、シリアル値として入りません。 これをシリアル値として入れるためにはどのようにすればいいでしょうか?

  • エクセルで日付入力

    エクセルで、『2003214』と入力したものを 『2003/2/14』という風に書き換えたいのですが、 上手くいきません……。 text関数で”yyyy/m/d”とやったら、 シリアル値で表示されて区切られてしまいます。 どなたか、良い方法を教えてください!!!

  • ユーザーフォーム入力後の値の貼付け方は?

    EXCELのVBEでユーザーフォームを作成しました。 テキストボックスに入力した値をEXCELシート上に 反映させるにはどのようにすればいいのでしょうか? EXCELシート上ではセルではなくてやはり テキストボックスに値が入るようにしなくてはできないのでしょうか? 初心者です。教えてください!

  • Excel VBA テキストボックスに当日の日付

    Excel 2013において、VBAで入力フォームを作成中の初心者です。 入力フォームの中に日付の項目があり、テキストボックスに手入力しています。 そのテキストボックスに当日の日付を自動で表示させたく、ネットで調べ試しましたが、うまくいきません。 やりたいこととしては、テキストボックスに今日の日付を自動的に和暦で表示させ、その日付を変更する場合には、「2016-12-03」などと入力後、和暦に自動的に変換して表示させたいのです。 手入力において、「2016-12-03」と入力後、自動的に和暦に変換するコードはネットで見つけることができ、うまくいったのですが、当日の日付を自動的に表示させる方法がわからずにおります。 日付を手入力後、和暦で表示させるコードは以下のようにしてあります。 Private Sub textbox1_AfterUpdate() With Me.textbox1 If IsDate(.Value) Then .Value = Format(.Value, "ggge年m月d日") End If End With End Sub どなたか、教えていただけると助かります。 よろしくお願いいたします。

専門家に質問してみよう