これは簡単な質問で、簡単な答えだと思いますが、見つかりません。
修正しなければならないスプレッドシートを継承しました。それを書いた人は誰でも、データを入力するために VBA と VBA UserForms を多用しました。1 つのフォームで、テキストおよび数値情報が入力され、特定のワークシートのレコードに保存されます。このスプレッドシートは、プロジェクト情報の記録に使用されます。それはコピーされ、何度も何度も再コピーされます。再コピーするたびにクリアされ、次のプロジェクトに使用されます。
ユーザーから、これらの主要なプロジェクトの 1 つのスプレッドシートが送られてきました。VBA、データ入力ユーザー フォームに問題があります。テキストまたは数字のいずれかを受け入れるものTextBox
は、フィールドを終了するときに常に数字を日付として再フォーマットしています!? VBAコードを3回チェックしました。データを再フォーマットするこのフィールドに関連する特別なコードはありませんOnEnter
。さらに、デザイナー内の from に関連付けられてOnExit
いるプロパティが見つかりません。Format
TextBox
私は C/C# 開発者であり、VBA 開発者ではありません。それでも、この「単純な」IDE には困惑しています。TextBox
表示値を再フォーマットするプロパティが見つかりません。
TextBox
数値を日付ではなく数値として永続的に解釈するように修正するにはどうすればよいですか?
さらに注意
2つのことを言及する価値があります。まず、ユーザーはこれらのフォームまたは VBA コードを変更できません。基盤となるモジュールはパスワードで保護されており、パスワードを知っているのは私とマネージャーの 2 人だけです。さらに、私は社内で唯一の開発者であり、誰もが何かを壊すのではないかと少し恐れているため、誰もコードに触れません。
次に、ファイル内の何かが破損している可能性があります。このファイルが私に送信されたとき、ユーザーは作業中のワークシートの名前が変更されたと述べました。WorkSheet タブの名前がランダムな 16 進文字列値に変更されたため、何かが正しく保存されなかったようです。
このフォームでは、これら 2 つの問題以外はすべて正常に機能しているようです。ヘルプやガイダンスをいただければ幸いです。