• 締切済み

エクセル 条件付き書式

Office365を使用しています。 A1に日付が入っていたら、C1にB1の内容を参照させ A1がブランクであれば、C1はブランクのまま という表を作りたいです。 お詳しい方、ご教授願います。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.5

質問文の用語「条件付き書式」が、普通の使い方と違う。 条件付き書式は、セルの「値」(書式とは別の重要な概念)に基づいて、そのセルの書式を決めるという、機能です。 質問は、セル(C1)の「セルの値」を、関数などを使って、決めたいという質問ではないか。 ーー >A1がブランクであれば、C1はブランクのまま これはIF文でやれる常識的なこと。 >に日付が入っていたら 日付けセルは「セルの値」は、数値で表現すれば、正の整数(時刻付きでない場合)なんだ。 その数値の範囲は、限定されているが。 それを日付として確信して扱えるのは、値の範囲が許容範囲で、セルの書式の表示形式が日付書式だからだ。 セルのデータが日付けかどうかは、IsDateというVBAの関数はあるが、元データが、文字列で表されているもののチェックのようなの(自信なし)で、ストレートに、使えない。 == だからA1がブランクならC1はブランク、そうでなければ、普通人は、B1の値で済ますしかないだろう。 セルの書式が何を設定されているかは、VBAで調べられるが、日付書式は、バラティがたくさんあって、チェックは、手に負えない。 == WEB記事で、  「セルに入っている値が日付かどうかを調べるには、IsDate関数を使います。セルにシリアル値が入っていて、日付の表示形式が設定されているとき、IsDate関数はTrueを返します。」という記事もあるが。小生は自信ない。 https://xtech.nikkei.com/it/atcl/column/15/090100207/090100010/

  • kzr260v2
  • ベストアンサー率48% (854/1779)
回答No.4

条件付き書式は、書式の変更しかできませんので、できることは「A1がブランクならC1の文字色を白にする(あらかじめC1の背景色も白にする)」ということになります。しかしこの場合、C1値は入っていますから、C1をもとに何らかの計算がされたりする場合、都合が悪いかもしれません。 C1の値が条件により変わるようにするには、C1に式を挿入することです。ただ、A1が空白かどうかチェックするだけで良いのか、厳密に日付であるかのチェックが必要なのかでやることはかわります。Googleなどで以下のようなキーワード検索をお試しください。 空白があるかどうかのチェックの場合。 Excel セル 値 チェック 日付であるかチェックの場合。 Excel セル 値 日付チェック 以上、参考にならなかったらごめんなさい。

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.3

No.2はC1にいれる式ですが タイトルにある条件付き書式でやりたい場合は C1に =B1 として 条件付き書式の 数式で =OR(A1="",ISERROR(VALUE(A1))) 書式の表示形式で ;;; としてください。

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.2

=IF(A1="","",IF(ISERROR(VALUE(A1)),"日付以外",B1)) で試してみてください。

回答No.1

C1セルに =IF(A1="","",B1) これでいかがでしょうか?

関連するQ&A