Saat ini saya mencoba untuk merekonsiliasi bidang "Nama" dari dua sumber data terpisah. Saya memiliki sejumlah nama yang tidak sama persis tetapi cukup dekat untuk dianggap cocok (contoh di bawah). Apakah Anda punya ide tentang bagaimana saya dapat meningkatkan jumlah pencocokan otomatis? Saya sudah menghilangkan inisial tengah dari kriteria pertandingan.
Formula Pertandingan Saat Ini:
=IFERROR(IF(LEFT(SYSTEM A,IF(ISERROR(SEARCH(" ",SYSTEM A)),LEN(SYSTEM A),SEARCH(" ",SYSTEM A)-1))=LEFT(SYSTEM B,IF(ISERROR(SEARCH(" ",SYSTEM B)),LEN(SYSTEM B),SEARCH(" ",SYSTEM B)-1)),"",IF(LEFT(SYSTEM A,FIND(",",SYSTEM A))=LEFT(SYSTEM B,FIND(",",SYSTEM B)),"Last Name Match","RESEARCH")),"RESEARCH")
sumber
Saya akan melihat ke dalam menggunakan daftar ini (hanya bagian bahasa Inggris) untuk membantu menghilangkan kekurangan umum.
Selain itu, Anda mungkin ingin mempertimbangkan untuk menggunakan fungsi yang akan memberi tahu Anda, dalam istilah yang tepat, bagaimana "tutup" dua string. Kode berikut datang dari sini dan terima kasih kepada smirkingman .
Apa yang akan dilakukan adalah memberi tahu Anda berapa banyak penyisipan dan penghapusan yang harus dilakukan untuk satu string untuk mendapatkan yang lainnya. Saya akan mencoba untuk menjaga angka ini tetap rendah (dan nama belakang harus tepat).
sumber
Saya memiliki rumus (panjang) yang dapat Anda gunakan. Ini tidak diasah sebaik yang di atas - dan hanya bekerja untuk nama keluarga, bukan nama lengkap - tetapi Anda mungkin menemukan itu berguna.
Jadi, jika Anda memiliki baris tajuk dan ingin dibandingkan
A2
denganB2
, letakkan ini di sel lain di baris itu (mis.,C2
) Dan salin sampai akhir.Ini akan mengembalikan:
Setelah itu akan memberi Anda gelar dari 0 ° hingga 6 ° tergantung pada jumlah titik perbandingan antara keduanya. (yaitu, 6 ° lebih baik dibandingkan).
Seperti yang saya katakan agak kasar dan siap, tapi mudah-mudahan membuat Anda berada di ball-park yang tepat.
sumber
Sedang mencari sesuatu yang serupa. Saya menemukan kode di bawah ini. Saya harap ini membantu pengguna berikutnya yang datang ke pertanyaan ini
Saya akan mengatakan itu cukup dekat dengan apa yang Anda inginkan :)
sumber
Anda dapat menggunakan fungsi kesamaan (pwrSIMILARITY) untuk membandingkan string dan mendapatkan persentase yang cocok dari keduanya. Anda bisa membuatnya case-sensitive atau tidak. Anda harus memutuskan persentase pertandingan yang "cukup dekat" untuk kebutuhan Anda.
Ada halaman referensi di http://officepowerups.com/help-support/excel-function-reference/excel-text-analyzer/pwrsimilarity/ .
Tapi itu bekerja cukup baik untuk membandingkan teks di kolom A dengan kolom B.
sumber
Meskipun solusi saya tidak memungkinkan mengidentifikasi string yang sangat berbeda, ini berguna untuk kecocokan parsial (kecocokan substring), misalnya "ini adalah string" dan "string" akan menghasilkan "pencocokan":
cukup tambahkan "*" sebelum dan sesudah string untuk mencari ke dalam tabel.
Rumus biasa:
menjadi
"&" adalah "versi singkat" untuk concatenate ()
sumber
Kode ini memindai kolom a dan kolom b, jika menemukan kesamaan di kedua kolom yang ditunjukkan dengan warna kuning. Anda dapat menggunakan filter warna untuk mendapatkan nilai akhir. Saya belum menambahkan bagian itu ke dalam kode.
sumber