
【やりたい事】
画像をご覧ください
左にあるブックと同じデータが、右のブックにもあります
画像のように、右のブックの、左のデータと同じ部分に水色を塗りたい
※右のデータに水色にしたい
左と右のデータの値や件数、並び方は同じです
ただし、右のExcelには、3パターンの存在の仕方があります
1パターン目→沢山あるデータの1番下にある
2パターン目→沢山あるデータの1番上にある
3パターン目→沢山あるデータの真ん中辺にある
※上記3パターンは、画像の右3パターンの説明
また
左のExcelのパターンも画像のとおり2パターンあります
※いずれも、並び順、件数は同じ
コード or アドバイス ご存じの方、教えて下さい
例 下記のいずれかのパターンが発生します
全部のパターンが1回で発生するという意味ではないです
左のエクセルパターン1 右のエクセル 画像の1番上のパターン
左のエクセルパターン1 右のエクセル 画像の1番下のパターン
左のエクセルパターン2 右のエクセル 画像の1番上のパターン
【左のリストの場所】【マクロが設置しているファイル】
C:\Users\user\Documents\総件数表示\リスト.xlsm
【右のリストの場所】
C:\Users\user\Documents\総件数表示\データ.xlsx
【左と右のExcelのシート名】
Sheet1
【水色】
XlRgbColor列挙→rgbAzure
値→16777200
#16進→#F0FFFF

A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
No1です。
>以下なのですが、A列のお客様番号のみ一致に変更したいのですが
>以下のように割愛すれば良いのでしょうか?
>【コード】
>key = ws1.Cells(row1, "A").Value
>key = ws2.Cells(row2, "A").Value
はい、それでOKです。
No.1
- 回答日時:
以下のマクロを標準モジュールに登録してください。
左側と右側が同じデータかどうかは、
A列、B列、C列、D列が全て同じであれば、同じデータとして判定しています。
Option Explicit
Public Sub 同一データ検索()
Dim wb2 As Workbook
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim lastrow1 As Long
Dim lastrow2 As Long
Dim row1 As Long
Dim row2 As Long
Dim dicT As Object
Dim key As String
Set dicT = CreateObject("Scripting.Dictionary")
Set ws1 = ThisWorkbook.Worksheets("Sheet1")
Set wb2 = Workbooks("データ.xlsx")
Set ws2 = wb2.Worksheets("Sheet1")
ws2.Cells.Interior.Pattern = xlNone
lastrow1 = ws1.Cells(Rows.Count, "A").End(xlUp).Row
lastrow2 = ws2.Cells(Rows.Count, "A").End(xlUp).Row
For row1 = 2 To lastrow2
key = ws1.Cells(row1, "A").Value & "|" & ws1.Cells(row1, "B").Value & "|" & ws1.Cells(row1, "C").Value & "|" & ws1.Cells(row1, "D").Value
dicT(key) = row1
Next
For row2 = 2 To lastrow2
key = ws2.Cells(row2, "A").Value & "|" & ws2.Cells(row2, "B").Value & "|" & ws2.Cells(row2, "C").Value & "|" & ws2.Cells(row2, "D").Value
If dicT.exists(key) = True Then
ws2.Range("A" & row2 & ":D" & row2).Interior.Color = rgbAzure
End If
Next
MsgBox ("完了")
End Sub
大変、実効性のあるコード、教授ありがとうございます
以下なのですが、A列のお客様番号のみ一致に変更したいのですが
以下のように割愛すれば良いのでしょうか?
※A列のみで良いのは、右のリストについては、お客様番号が重複
しないように、チェックしている為です。また、C列・D列は空白等
ある事があり、左と右のブックにおける完全一致は難しい為です
また、
【コード】
key = ws1.Cells(row1, "A").Value
key = ws2.Cells(row2, "A").Value
>A列、B列、C列、D列が全て同じであれば、同じデータとして判定しています。
ご指導、宜しくお願いします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
vba テキストボックスとリフトボックスについて
Excel(エクセル)
-
9月17日でサービス終了らしいのですが、今までのようなエクセルの質問や相談はどこですればいい?
Excel(エクセル)
-
【マクロ】【相談】Excelブックとマクロを早く動くようにする為には?
Excel(エクセル)
-
-
4
【マクロ】【配列】3つのシートに、同じ作業をしたい
Excel(エクセル)
-
5
エクセルのリストについて
Excel(エクセル)
-
6
エクセルの複雑なシフト表から当日の出勤者と勤務時間帯を抜き出したい
Excel(エクセル)
-
7
【マクロ】列を折りたたみ非表示したセルの内、可視セルをコピーするとがエラーとなる
Excel(エクセル)
-
8
条件付書式設定にて、本日の日付を条件として、2行分にセルに色を付けるには?
Excel(エクセル)
-
9
エクセルの循環参照、?
Excel(エクセル)
-
10
【マクロ】EXCELで読込したCSVファイルは通常のエクセル(xlsx)と同じようにマクロで動かせる
Excel(エクセル)
-
11
特定のセルだけ結果がおかしいです。 関数はオートフィルでコピーしており、細かく見てもどこもおかしくあ
Excel(エクセル)
-
12
【関数】同じ関数なのに、エラーが出るエクセルと出ないエクセルある?
Excel(エクセル)
-
13
【マクロ】アクティブセルの時間を別ブックから検索。見つかったセルを含めた最終行まで選択したい
Excel(エクセル)
-
14
【エクセル】期限アラートについて
Excel(エクセル)
-
15
【マクロ】3行に上から下に並んだ文字列を、単純に、逆に並び替えれますか?
Excel(エクセル)
-
16
【マクロ】変数に入れるコードを少しでも短くする為には?
Excel(エクセル)
-
17
エクセルの関数について
Excel(エクセル)
-
18
【マクロ】数式を入力したい。カウントIFの範囲がつど変わる場合の数式の入力方法について
Excel(エクセル)
-
19
エクセルシートの見出しの文字を大きくしたい
Excel(エクセル)
-
20
【マクロ】【画像あり】ファイル名を別名にて保存。元ファイルはゴミ箱へ移動⇒する方法について
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【医学】人間は右方向を見て歩...
-
「写」3画め、「考」5画目の...
-
入力が不要を意味する斜線は、...
-
Android アプリで「見開きの一...
-
これなんですけど、なんで左の...
-
右に同じ
-
左のベストに右のブラウス合わ...
-
単語の先頭に付く『右』とは?
-
船名を右舷に書くのは「左←右」?
-
【マクロ】左のブックと右のブ...
-
左・右・に同じ・・・とは
-
左(右)枝分かれ文について
-
カタカナの「ワ」と「ク」の字...
-
ダイヤル式金庫の開け方がわか...
-
右隣?左隣?
-
ハンドメイドのスマホポシェッ...
-
赤ちゃんのころは左利きだった...
-
Panasonicのドラム式洗濯機につ...
-
私は左利きです! なのでノート...
-
イヤホンを買ったのですがLとR...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】左のブックと右のブ...
-
右に同じ
-
利き手について質問です。私の...
-
これなんですけど、なんで左の...
-
カタカナの「ワ」と「ク」の字...
-
集団行動 4列縦隊 おしえて~。
-
入力が不要を意味する斜線は、...
-
右隣?左隣?
-
単語の先頭に付く『右』とは?
-
ハンドメイドのスマホポシェッ...
-
「写」3画め、「考」5画目の...
-
左のベストに右のブラウス合わ...
-
彼は我が社の右腕だ! 彼は我が...
-
右と左のかっこいい言い方
-
Wordで段組をした場合の行番号...
-
ピアスが斜めに空いた
-
船名を右舷に書くのは「左←右」?
-
×(バツ)の書き方。
-
利き手
-
【数A】SUNDAYの6文字を一列に...
おすすめ情報