ユーザーがセル D1 に日付を入力するまで、セル A1 のデータが表示されないようにします。セル D1 に日付を入力すると、セル A1 のデータが表示されます。
答え1
@Scott Craner は知識が豊富で、あなたが提供した情報の範囲内で簡潔にあなたの質問に答えてくれました。スコープを拡張せずにセルの値を非表示にするには、VBA 以外に方法は思いつきません。
条件付き書式を使用します。最初にセルのテキストの色を背景と同じ色に設定し、日付が追加されたときに、テキストの色を目的の色に変更する条件付き書式ルールを設定します。– スコット・クレイナー
セルが選択されている場合でも、ユーザーは数式バーのデータを見ることができることに注意してください。これを防ぐには、数式バーを非表示にするか、「ロックされたセルを選択する」ボックスのチェックを外してワークシートを保護します。
セルのオーバーフローも念頭に置いておく必要があります。B1 が空で A1 に大きな文字列が含まれている場合、デフォルト設定では A1 の内容が隣接する列に流れ込みます。テキストがそれらの列の背景と一致するとテキストは見えず、選択もできませんが、セルの境界線が削除され、結合されたセルのように見えます。背景色を変更すると、オーバーフローしたテキストが読み取れます。テキストを右揃えにして列 B のオーバーフローを防ぐことができますが、列が左側に追加される場合は問題になる可能性があります。
あるいは、データを非表示のシートに配置し、適切な場合に数式を使用してデータを表示することもできます。熟練したユーザーがデータを早まって読み取ってしまうのを防ぐために、ワークシートの保護は依然として必要です。また、熟練したユーザーは、何をしても、ワークブック内のどこからでもデータを見つけることができるという警告も必要です。