Excel - Makro untuk menyorot nilai duplikat

Microsoft Excel digunakan secara luas di seluruh dunia untuk membuat, menangani, memanipulasi atau membandingkan berbagai sumber data. Excel, bersama dengan VBA, dapat digunakan untuk melakukan banyak pekerjaan menarik seperti membandingkan nilai yang sama di satu kolom dengan yang lain. Seseorang dapat membuat kode khusus VBA yang akan mencari nilai dalam rentang yang diberikan dan menyoroti sel-sel di mana nilai dari satu kolom cocok dengan yang lain. Untuk menambah fleksibilitas, pengguna juga dapat menentukan kode warna di mana mereka ingin sel-sel yang cocok disorot.

Isu

Saya telah Menempati nomor Kamar di kolom B dalam lembar bernama Daftar Kamar. Juga, saya memiliki total nomor Kamar di kolom D di lembar yang sama. Saya ingin menyorot semua nomor kolom B di kolom D.

Misalnya, saya memiliki angka: 2 di sel B2, 8 di sel B3 & 6 di sel B4 di kolom B dan angka 1 di sel D2, 2 di sel D3, 3 di sel D4, 4 di sel D5, 5 di sel D6, 5 di sel D6, 6 di sel D7, 7 di sel D8, 8 di sel D9, 9 di sel D10 di kolom D dari lembar yang sama bernama Daftar Kamar. Saya ingin menyorot dengan warna sel di kolom D yang berisi angka yang sama dengan kolom B. Di sini, saya ingin menyorot sel D3 (Karena mengandung nomor 2 yang juga di sel B2), sel D9 (Karena mengandung nomor yang sama sebagai sel B3), sel D7 (Karena mengandung nomor yang sama dengan sel B4).

Jadi saya hanya ingin mengubah warna sel D3, D9 & D7 kolom D.

Singkatnya, saya ingin mengetahui angka yang sama yang ditulis dalam kolom B dari kolom D dan menyorot sel-sel itu di kolom D dengan warna.

Di kolom D, angka-angka harus di tempat semula saja, tetapi sel harus disorot oleh warna yang berbeda.

Larutan

Jalankan makro ini

Konfirmasikan apakah Anda mendapatkan yang Anda inginkan

 Sub tes () Dim rng Sebagai Rentang, c Sebagai Rentang, cfind Sebagai Rentang, rng1 Sebagai Rentang Lembar Kerja ("daftar kamar"). Aktifkan Set rng = Rentang (Rentang ("D2"), Rentang ("D2"). Rentang ( xlDown)) Set rng1 = Rentang (Range ("B2"), Range ("B2"). End (xlDown)) Untuk Setiap c Dalam rng Set cfind = rng1.Cells.Find (apa: = c.Value, lookat: = xlWhole) Jika Tidak cfind Is Nothing Then c.Interior.ColorIndex = 3 Selanjutnya c End Sub 

Larutan

Terima kasih kepada [venkat1926 untuk tip ini di forum.

Artikel Sebelumnya Artikel Berikutnya

Tips