日付または特定の文字列のみを許可するようにデータ検証を設定する方法


1

誰かが有効な日付を入力したことを確認するためにデータ検証を使用したいのですが、入力できるようにしたいのですTBD-これら2つのオプションだけです。これはVBAなしでも可能ですか?データ検証ツールに入力できるカスタム式はありますか?


入力(1つのセルへの自由形式の日付入力、月と日のための個別のセルなど)をどの程度管理していますか?書式のヒントを含めますか(「MM / DD / YYYYとして入力」など)。システムが認識できる日付として入力されている場合は、単純な場合があります。数値として保存され、その値が検証制限の範囲内にあるかどうかをテストできます。入れ子になったIFを使用して、TBDまたは空白も探します(TBDチェックのセルでUPPER関数またはLOWER関数を使用して、大文字化は問題になりません)。
fixer1234 14年

日付検証とは、Excelが日付データおよび/または意味のある日付として認識するものを意味しますか?(過去または未来の数十年の日付を受け入れますか?)
fixer1234 14年

これを見た。日付の数値を使用して、ネストされたIFをチェックしてみます。ありがとうございました!(今すぐ出頭しますが、明日それが機能するかどうかをお知らせします)。
T.サリバン14年

何が悪いのですか?これを[データ検証設定]タブのカスタム式として追加しようとしましたが、式を受け入れましたが、セルへの有効なデータ入力でエラーを作成します:or(> 44639、<94196、 "TBD"、 "tbd")
T.サリバン14年

条件はtrueまたはfalseに評価される必要があるため、「TBD」および「tbd」の前に等号を付けます。
fixer1234

回答:


2

これを行うには、セル形式をTextに設定し、カスタムデータ検証ルールを設定します。

セル形式を設定するには、データ入力セルを右クリックしてを選択しますFormat Cells...。次に、カテゴリをに設定しますText

カスタムデータ検証を設定するには、データ入力セルを選択し、[ Data Validationデータ] リボンをクリックします。[許可]ボックスをに設定しますCustom。次に、以下の式を入力します。ここA1で、データ入力セルのアドレスです。

=OR(A1="TBD",NOT(ISERROR(DATEVALUE(A1))))

これにより、「TBD」またはExcelが日付として自動的に認識するものを入力できます。これにより、やなど、思いもよらなかった不規則な形式が許可されるmm/dd-yyyy場合がありm-dます。特定の日付形式のみを許可する場合は、別のアプローチをとる必要があります。


感謝しますが、他の計算には有効な日付エントリが必要なので、オプションではなくテキストとして保存します。
T.サリバン

@ T.Sullivan日付の計算は、セルがテキストとしてフォーマットされている場合でも機能します。それを試してみてください。
Excellll

さて、これを試してみましたが、列をTEXT形式に変更すると、日付がシリアル番号として表示されます。日付として表示する必要があります。何か案は?
T.サリバン

既に日付が入力された多数の行がある既存のワークシートで作業していることを追加する必要があります。おそらく、テキストとしてセットアップし、最初から日付形式を使用して入力するつもりだったかもしれません。私はおそらく...日付形式で表示しながらテキストに私の日付列を変換する方法を見つけることができます
T.サリバン

@ T.Sullivanしたがって、テキストの書式設定は、データ入力セルであり、テキスト形式が適用された後にのみデータが入力された場合にのみ期待どおりに機能します。Excelは、一般形式のセルに入力されたデータに暗黙的に形式を割り当てます。したがって、既に入力した日付はシリアル番号として保存されます。
Excellll 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.