Excelでの比較、データチェックの方法とは?

このQ&Aのポイント
  • Excel2000を使用してデータの比較やデータチェックを行う方法を探しています。データは数字のみで入力されており、同じデータを二度入力して比較し、違っている部分に色をつけたいと考えています。また、その違っている部分に加えて、該当する行の一番左にあるNoにも色をつけたいと思っています。
  • Excel2000でデータの比較とデータチェックを行う方法を教えてください。データは数字のみで入力され、同じデータを二度入力して差異を確認し、違いがある部分に色をつけたいと考えています。また、差異のある部分だけでなく、該当する行の一番左にあるNoにも色をつけることは可能でしょうか?
  • Excel2000を使用してデータの比較とデータチェックを行いたいです。データは数字のみで入力され、同じデータを二度入力して差異をチェックし、違いのある部分に色をつけたいと思っています。また、その差異のある部分だけでなく、該当する行の一番左にあるNoにも色をつける方法を知りたいです。
回答を見る
  • ベストアンサー

Excelでの比較、データチェックを行うには?

Excel2000を使用しています。 全て数字で No、数量、金額、コード・・・・ といった感じにデータを入力しており、 量が多いので、同じものをもう一回入力して 比較し、違っている部分に色をつけることはできないか 調べています。入力自体はマクロを使ったファイルにて 入力しており、CSVで保存してあります。比較はExcelにて そのcsvのファイルをシート1、シート2にそれぞれ開いて 行おうとしています。 違っている部分に色をつけることはできそうなのですが その部分だけでなく、その行の一番左にあるNoにも色を つけたいと思うのですが、そのようなことは可能でしょうか?また、もっとよい方法があればどなたか教えてください。

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

マクロをお使いでしたらマクロで対処されたらいいと思います。 例えば、こんな感じです。 "Sheet1"と"Sheet2"間で比較し、相違しているセルをベージュ色で塗り潰します。 そのときは、A列のセルも黄色で塗り潰します。 さらに違っている個所数をメッセージボックスで表示します。 Sub シート間データチェック() Dim OrgSH As Worksheet Dim ChkSH As Worksheet Dim ColMax As Integer Dim Rng As Range Dim Cnt As Long Dim ColChk As Boolean Set OrgSH = Worksheets("Sheet1") Set ChkSH = Worksheets("Sheet2") ColMax = OrgSH.UsedRange.Columns.Count ChkSH.Activate For Each Rng In OrgSH.UsedRange   If Rng.Column = 1 Then ColChk = False   If Rng.Value = Range(Rng.Address).Value Then     Range(Rng.Address).Interior.ColorIndex = xlNone   Else     Range(Rng.Address).Interior.ColorIndex = 40     Cnt = Cnt + 1     ColChk = True   End If   If Rng.Column = ColMax And ColChk = True Then     If Range("A" & Rng.Row).Interior.ColorIndex <> 40 Then       Range("A" & Rng.Row).Interior.ColorIndex = 6     End If   ElseIf Rng.Column = ColMax And ColChk = False Then     Range("A" & Rng.Row).Interior.ColorIndex = xlNone   End If Next Rng Range("A1").Activate MsgBox "違っているセルは " & Cnt & " ヶ所です。", vbExclamation Set OrgSH = Nothing Set ChkSH = Nothing End Sub

chacocha-n
質問者

お礼

ご回答ありがとうございました。 申し訳ありません、入力するためのマクロは私が作ったものではありません。 私はマクロというものが全くわかりません。 せっかくアドバイスしていただいたのですが何のことかさっぱりわかりません。関数について本を調べつつ手探りでやっている状態です。 どこかにこれを貼り付ければできるものなのでしょうか?

その他の回答 (2)

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.3

> どこかにこれを貼り付ければできるものなのでしょうか? そうです。簡単に実行出来ますよ。 操作手順を詳しく説明しますので、テストしてみてください。 1.Alt + F11 で VBE(Visual Basic Editor)を開きます。 2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。 3.モジュールウィンドウに先のコードをコピーして貼り付けます。 4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 5.実行するときは、Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で  「シート間データチェック」を指定し、[実行]ボタンを押します。

chacocha-n
質問者

お礼

丁寧なご指導ありがとうございます。 早速チャレンジしてみます。 ありがとうございました。

  • happypoint
  • ベストアンサー率36% (521/1422)
回答No.1

>csvのファイルをシート1、シート2にそれぞれ開いて この仕様は変更できないのでしょうか? 2つのファイルを同一のシートに展開して良いのなら、 「条件付き書式」を使用するのが簡単だと思います。 (書式-条件付き書式) たとえばNoがそれぞれA-E列とF-J列に入っているとします。 A1とF1セルの値が異なるときにA1に色をつけるには、 A1の条件付き書式を、次のように設定します。  セルの値が 次の値に等しくない =F1 そして右下の「書式」ボタンを押して、「パターン」タブから、塗りつぶす色を選びます。 このセルの書式をコピーし、 すべての行・列(A-E列)に書式だけ貼り付けすれば、OKです。

chacocha-n
質問者

お礼

回答ありがとうございました。 早速チャレンジしてみました。 できたのですが、かなりボリュームがあるので横に貼り付けるのが大変でした。 とても参考になりました。 ありがとうございました。

関連するQ&A

  • Excelマクロでセルの比較

    Excelマクロでセルの比較 まだマクロ初心者なので、詳しいことがわからなくて困っております。 例)●前提として何行目まであるかは変化します     (A列)(B列) (1行目) 35  35 (2行目) 26  26 (3行目) 13  13 (n行目) 12  12 ※n=最終行 【やりたいこと】 このようにシートに入力されていたとして、 「A1=B1?」⇒「A2=B2?」⇒「A3=B3?」⇒「An=Bn?」と比較を進めていき不一致の有無を出す。 もし不一致がなければ、そのまま通過しその次のマクロを実行していく。 不一致があった場合には、不一致の行を別ファイルに出力してファイル保存し、ファイルを閉じる。 マクロを実行している元のファイルは、保存せずにファイルを閉じる) 行の長さが変化するため、その変化にも対応した処理を実行したいと思っております。 本やサイトで調べてみたのですが、基礎知識がないためうまく処理をさせるマクロを作ることが出来ませんでした。 このようなマクロが可能なのかもわかりませんが、出来ましたらこのマクロを教えていただけますでしょうか。 宜しくお願いいたします。

  • 2つの行を比較して、同一セルのみ色をつける方法

    何だかお世話になりっぱなしで、申し訳ない感じなのですが、またよろしく御願いします。 シート1の1行目と、シート2の1行目を比較して、同じ数字があればそのセルに色をつけるということはできますでしょうか。 同じく2行目以降も、シート1とシート2の同じ行を比較していき、同じ数字があればセルに色を付けていくようにしたいと思ってます。 <例> シート1の1行目 「1」「2」「3」「4」「5」 と各セルに入っているとします。(セルには数字のみ入っています) シート2の1行目 「4」「5」「9」「10」「15」 と入っていた場合、「4」「5」のセルのみに色を付けると言うことです。 シート1,2の各行のセルに記入されている数字は、あらかじめ決まっている数字ではなく、あとで付け足していきます。 ですが、シート1とシート2で比較する行は同一であり、シート1の5行目であれば、シート2の5行目と比較。 ネットでいろいろと調べてみたのですが、特定の数字があった場合にセルに色をつけるというものはありましたが、私が思っているようなことはできないようでした。

  • Excel マクロについて

    Excelで作成したシートを次の手順で保存できるようなマクロを作成したいのですがどうしたらいいでしょうか?  1)あらかじめ所定のフォーマットを用意しユーザーが入力できるようにする。  2)ユーザがボタンを押すとそのシートの上2行(1行、2行)と左1列(A列)が削除され、    (タイトル行なのでCSVにする際に不要な為。)  3)「名前を付けて保存」のダイアログボックスが表示し  4)保存先のフォルダが「X:\DATA\」となるようにし  5)ファイル名がその日付(yyyymmdd.csv)、CSV形式 (例:20031125.csv)となるようにし、    (ユーザーにても変更の可能性もあるので固定にはしない)  6)ユーザーが保存先、ファイル名等を確認語保存する。  7)保存後は元のEXCELシート(CSV形式でない)で開いた状態で終了とする。 自分でも作成したのですが、本当にこれでいいのかも疑問でご意見を教えて下さい。 特に、7)のところがうまくいかず、6)での保存後どうしても開いているファイルの状態が CSV状態になります。 以上、ご存知の方教えて下さい。  

  • エクセルVBAでCSVを読み込んで別ファイルにまとめたいです。

    エクセルVBA初心者の者です。 マクロの記録でできたコードをいじって、 なんとか動くものができるレベルです。 Aというフォルダに20~40行程度の内容のCSVファイルが 数百個あります。開けてみないと何行あるのかわかりません。 そのAフォルダのCSVの内容をエクセルで開いて、別のエクセルファイルの一枚のシートにまとめたいのです。 最初にCSVファイル名を一枚のシートのA列に書き出すところ まではやれたのですが、それを順番に読み込んでコピペの 流れができません。 CSVファイル名読み込み 読み込んだファイル1つめCSV開く CSVの20~40行をコピー 別のエクセルファイルのシートに貼り付け 1つめCSV閉じる ↓ 読み込んだファイル2つめCSV開く 繰り返し こういうやり方じゃない方がいいのかもわかりません。 もしかして考え方も違うのでしょうか? サンプルコード教えていただけるとありがたいです。 よろしくお願いします。

  • excel VBAを使って、データを自動的に表示させたい!

    excelのVBA・マクロの書き方について教えてください!! たとえば、商品データ(商品名、数量、産地、担当者、商品コード)を入力したシートがあります。 別のシートに、商品名と数量を入力するだけで、商品データを参照して、産地・担当者・商品コードが自動で入力されるマクロを作成したいです。 「商品名」だけを入力して、表示させることはできたのですが、 商品名が同じで、数量が違うものがあると、片方のものしか表示されません。 A・B列に「商品名」・「数量」を入力して、自動でデータが表示される方法はありますか??

  • Excel2000で、データの比較とコピー

    こんばんは! シート1に お店 商品コード 商品名  金額 01  05000    みかん  500 01  05010    メロン  1000 02  01000    いちじく 300 とあり、 シート2に お店 商品コード 商品名  金額 01  05000    みかん  500 01  05010    メロン  1300 02  01000    いちじく 300 となっている場合に、 商品コードが同じものの行を比較して、金額の変更があったら、シート3に 01  05010    メロン  1300 と行ごとコピーをしたいのですが、どのようにすれば良いでしょうか? 何か良い関数や、マクロなどありましたらご伝授願います。

  • Excelにおけるシート間の比較について

    いつもお世話になっております。 Excel2003の関数(もしくはマクロ?)についての質問です。 シート1に No|管理|項目 01|5000|りんご 02|3000|みかん 03|1000|いちご とあります。 シート2に No|管理| 03|____| 01|____| (____分は未入力セル) とあった場合、未入力セルになんらかの関数を入力して No|管理| 03|1000| 01|5000| と表示させたいのです。 Noの比較まではできるのですが、それがイコールだった場合 管理の番号を入力する、というところでどんな関数を使用すれば 良いのか検討がつかなかったので質問させていただいております。 できるだけ関数でできるとありがたく、識者の方のご教授のほどよろしくお願いいたします。

  • Excelで、開いたファイルを消したい

    Excel2000ですが、 デスクトップ上に保存したcsvファイルを開く ↓ 作業中のブックにシートを増やしそこに先ほど開いたcsvファイルを貼り付けてシート名を変更 ↓ 開いたcsvファイルを閉じる という作業ですが、VBAマクロにするとどういうプログラムになるのでしょうか?教えてください。

  • エクセルでデータ検索(抽出)ファイルを作成したい

    エクセルでわからない事があり投稿させて頂きました。 各店の在庫データをシート2.シート3.シート4へ貼り、 シート1に商品コードを入力する欄を作り、入力したコードの商品在庫が各店舗ごとに表示されるファイルを作成したいと思ってます。 (検索したコードの商品在庫数量をシート1のC列に表示させわかりやすくしたいです) 在庫データのファイルはC列に商品コード/F列に在庫数量が記載されており、商品コードでひっかかった行のF欄の数値をシート1のC列に出せるようにしたいのですが可能でしょうか? 過去ログは確認してみたもののわからず・・・ 可能かどうか教えて頂けると幸いです。

  • 比較のマクロについて(エクセル)

    vbaについておしえてください。 シート1とシート2を比較して不一致がある項目にに色をつけたいです。 例えばですがシート1の 1行目の番号1and 品名りんごand金額 1 (3セット) の3箇所のデータがシート2になければ、色をつけたいのです(シート1に) 初心者のためコードをご教示いただけますと幸いです。 宜しくお願い致します。

専門家に質問してみよう