Excelに関する質問です!
過去と現行の2枚のシートを比較して、異なるセルを手っ取り早く見つける方法はないでしょうか?
具体的な要望は下記の通りです。
1現行のシートには、過去のシートにはない新規のセルがあるため、そのセルのみ赤でハイライトしたい
2過去のシートには、現行のシートからは削除されたセルがあるため、そのセルのみ青でハイライトしたい
※各値は4列×2行で記載されているものとします!
※イメージはこんな感じです。間違い探しみたいなことを自動的にやりたいです!
現行シート
青木 佐藤 山田 田中
川井 鈴木 山村 三島
過去シート
渡部 青木 佐藤 山田
田中 川中 山村
目視でやりたいところですが、それには量が多いため、しんどいです。また、ルーティンワークになる可能性が大なので、いつか間違えそうです…。
どなたか良い方法をご存じであれば教示いただきたいです。
尚、目視しかないという回答でも大丈夫です。宜しくお願いします!
No.2ベストアンサー
- 回答日時:
条件付き書式は、範囲を決めて設定することができるのはご存じだろうか。
A1セル【から】F10セル【まで】を指定して、A1セルに入力できる状態で、A1セルに下の回答で示した数式を指定すると、F10セルまで「A1」と書いた部分はそれぞれのセルに置き換わる。
F10セルには、
=Sheet2!F10<>F10
と設定されるのだ。
すべてのセルを選択すると、A1セルからすべてのセルが選択され、A1セルに入力できる状態になる。
セルひとつ一つに対して設定する必要はない。
また、必要ならBookのコピーを作り、そのコピーの上で操作すると間違った事をしてデータを消してしまうことも無い。
あらかじめ設定されている条件付き書式を消して、新たに設定することもできる。
銀鱗様
この度はお礼が遅れ、申し訳ございません。
また、2度の回答誠にありがとうございます。
>すべてのセルを選択すると、A1セルからすべてのセルが選択され、A1セルに入力できる状態になる。
セルひとつ一つに対して設定する必要はない。
全く知りませんでした・・・お恥ずかしい限りでございます。
ご教示いただいた方法で上手くいきました!
今回の作業自体は引き継ぎをする必要があるため、自分自身が理解できていないことをやるわけにはいかなかったのですが、この分ならマニュアルもうまく作れそうです。
tom04様には大変恐縮なのですが、上記理由から今回は銀鱗様をベストアンサーに選ばせていただければと思います。
重ね重ねお礼申し上げます!!!
No.3
- 回答日時:
こんばんは!
>各シートに20テーブルほど存在する
どのような配置で存在しているのか判りませんが、
↓の画像のように連続しているものとします。
VBAになりますが一例です。
Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
マクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
Sub Sample1() 'この行から//
Dim i As Long
Dim myArea1 As Range, myArea2 As Range
Dim c As Range, r As Range, myFound1 As Range, myFound2 As Range
Dim wS1 As Worksheet, wS2 As Worksheet
Set wS1 = Worksheets("Sheet1")
Set wS2 = Worksheets("Sheet2")
wS1.Range("A:D").Interior.ColorIndex = xlNone
wS2.Range("A:D").Interior.ColorIndex = xlNone
For i = 1 To wS1.Cells(Rows.Count, "A").End(xlUp).Row Step 2
Set myArea1 = wS1.Cells(i, "A").Resize(2, 4)
Set myArea2 = wS2.Cells(i, "A").Resize(2, 4)
For Each c In myArea1
If c <> "" Then
Set myFound1 = myArea2.Find(what:=c, LookIn:=xlValues, lookat:=xlWhole)
If myFound1 Is Nothing Then
c.Interior.ColorIndex = 3 '←赤
End If
End If
Next c
For Each r In myArea2
If r <> "" Then
Set myFound2 = myArea1.Find(what:=r, LookIn:=xlValues, lookat:=xlWhole)
If myFound2 Is Nothing Then
r.Interior.ColorIndex = 8 '←水色
End If
End If
Next r
Next i
End Sub 'この行まで//
※ 「青」だと文字が見えにくいので「水色」にしています。
※ 配置が1行でも異なれば全く意図しない動きになります。
※ 関数でないのでデータ変更があるたびにマクロを実行する必要があります。m(_ _)m
tom04様
この度はお礼が遅れ、申し訳ございません。
まさか写真つきでマクロコードをいただけるとは思っておりませんでした。誠にありがとうございます。
実際に自分の手でコピペをしてやってみたら、見事自動で色がつきました!魔法使いになったようでとても感激です(笑)
ただ、作業したいシート自体が、tom04様に貼っていただいた写真のように行が綺麗に並んでおらず、また私自身がコードの中身を理解できていないため、今すぐこれを実践するのは難しそうです。
もっと勉強させていただきます・・・!
重ね重ねお礼申し上げます。
No.1
- 回答日時:
自分なら、条件付書式で行う。
Sheet1 と Sheet2 を比較する場合、
Sheet1 または Sheet2のどちらかに条件付書式をすべてのセルに設定する。
※これはマシンパワーが必要なので、可能な限り条件付書式の範囲を決めて行うことを勧める。
Sheet1のセルの色を変えるなら、Sheet1のA1セルに
=Sheet2!A1<>A1
と数式を設定して書式にセルの色を指定する。
これで、Sheet1とSheet2で異なるセルには色が付く。
ついでに「並べて比較」を行うことで、どのように違うのかを確認することができる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Excel(エクセル) Excelについて 4 2023/03/02 09:24
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Excel(エクセル) EXCEL マクロで 同じフォルダ内の複数ファイルの複数行全体を選択して1つのファイルに集約 4 2022/09/27 18:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル 足して割る
-
貼り付けで複数セルに貼り付けたい
-
エクセルのセルの枠を超えて文...
-
【Excel】 セルの色での判断は...
-
対象セル内(複数)が埋まった...
-
セルをクリック⇒そのセルに入力...
-
excelのCOUNTIF関数で、『範囲=...
-
EXCEL 結合されたセルを関数で...
-
エクセルで指定したセルのどれ...
-
エクセルにリンクされるのをし...
-
【マクロ】ボタンを押すごとに...
-
【エクセル】IF関数 Aまたは...
-
エクセルの数式で教えてください。
-
エクセルで空白セル”” と未入...
-
excelのにおいてtabキーで右セ...
-
html テーブルのセルにリンクを...
-
枠に収まらない文字を非表示に...
-
【Excel】特定の文字から文字ま...
-
EXCELで一番安い金額と名前を抜...
-
Excelでのコメント表示位置
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
対象セル内(複数)が埋まった...
-
エクセル 足して割る
-
Excelで数式内の文字色を一部だ...
-
貼り付けで複数セルに貼り付けたい
-
Excelでのコメント表示位置
-
セルをクリック⇒そのセルに入力...
-
EXCEL VBA セルに既に入...
-
excelのCOUNTIF関数で、『範囲=...
-
【Excel】 セルの色での判断は...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
(Excel)数字記入セルの数値の後...
-
Excelで、「特定のセル」に入力...
-
エクセルの一つのセルに複数の...
-
複数のセルのいずれかに数字が...
-
excelの特定のセルの隣のセル指...
-
数式を残したまま、別のセルに...
-
ハイパーリンクの参照セルのズ...
おすすめ情報
補足させてください!
2行4列と申し上げましたが、実際にはこれを1テーブルと数えると20個近くあります。
補足させてください!
2行4列とは申し上げましたが、これを1テーブルと数えると、各シートに20テーブルほど存在する前提でご回答いただけますと幸甚です(/´△`\)