• ベストアンサー

エクセル2010 条件書式について

添付しました表の Sheet1が過去のデータ Sheet2が更新されたデータ この場合条件書式で 変更箇所は赤色 追加されている所を青色 という方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

Sheet1とSheet2が同じレイアウトなら以下のような数式を使った条件付き書式を設定するのが簡単です。 Sheet2のA1セル以下を選択し、条件付き書式で「数式を使用して・・・」を選択し、以下の式を入力し、書式でセルの色を青に設定します。 =AND(A1<>"",INDIRECT("Sheet1!RC",FALSE)="") さらに新規ルールで以下の数式を入力し、書式からセルの色を赤にします。 =A1<>INDIRECT("Sheet1!RC",FALSE)

hana87u087
質問者

お礼

ありがとうございます。 数式を使用しての条件付書式が困難でしたが思っていることができそうです。 この数式は空白のセルも色が付くのでしょうか。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 Sheet1とSheet2のセル構成は同一で仮にA1:C10範囲とします。 変更はSheet1のセル<>sheet2のセル、追加はSheet1が未入力とします。 (1)Ctrl+F3→新規作成→名前欄を入力(仮にaaa)→参照範囲欄に=Sheet1!$A$1:$C$10→OK (2)Sheet2のA1:C10範囲を選択→条件付き書式設定→ルールの管理→新規ルール→数式を~選択    数式欄に=AND(index(aaa,ROW(),column())<>"",A1<>INDEX(aaa,ROW(),COLUMN()))→書式→塗りつぶしタブで赤→OK    新規ルール→→数式~を選択→数式欄に=AND(index(aaa,ROW(),COLUMN())="",A1<>INDEX(aaa,ROW(),Column()))→書式→塗りつぶしタブで青を選択→OK 因みに数式は1行目から始まる事としていますが、n行目以降の場合、名前定義や行調整が必要です。 =AND(index(aaa,ROW()-(n-1),column())<>"",An<>INDEX(aaa,ROW()-(n-1),COLUMN()))

hana87u087
質問者

補足

回答ありがとうございます。 一度試してみましたが、空白の所も色が変わるのでしょうか。 数式がややこしくもう一度チャレンジしてみます。

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

条件付書式や、関数でも難しいと思う。 VBAで1ある時点での情況は示せても、お互いのシートで変更、抹消、追加されたと気に  再度シート全セル対象の 作業を行いなおす方法以外は難しいかも (1)ある時点で一旦結果を出す (2)その後シートのチャン毛イベントで、他シートの、同位置セルをちぇっくする で良いのかな。両方見張ってないとダメだよね。 出来るとしても現実的で無いだろう。 エクセルのことをよく知らない質問者が、簡単だろうと思って、思いついたニーズだろう。 ーーー 変更履歴の仕組みなどの機能に持ち込めないか考えることだろう。 エクセルは思いつく程度のことは、何でもできるといソフトではないよ。 これなどやろうとするとプログラムがひつ労でプロ中のプロで無いとVBAでは荷が重いような気がする。 == プログラム経験が無いだろうから、ここのデータのキーという考えが質問者には無い。これが無いと変わったかどうか(違っているかどうか)、いえないのだが。 製品番号や生徒番号というような絶対視するデータ。これをもし間違えば、変更のつもりも新規になったり、逆もありえる。 全く2シートの同一位置セルが同じかどうかをチェックして可、というのはどんな場合か?コピペした方が手っ取り早い。

hana87u087
質問者

補足

回答ありがとうございました。 関数ではできましたが、分かりやすく色を付けるのが目的でしたので。 変更履歴もと思いますが、少し使い勝手がと思い。 質問内容が伝わりにくくなってしまい申し訳なかったです。

関連するQ&A