Welcome to the Board!
This is a very tricky and difficult problem that comes up quite often. The issue is that what does and does not constitute a match canbe very hard to define, and inevitably always has "exceptions". You could have records that appear to be similar at first glance, but are actually two different entities.
Remember, Excel is a very literal program and just does what you tell it. That means before it can do anything, you have to tell it precisely what the rules are, which means you need to define those rules, clearly and precisely, upfront. Just trying to come up with those rules can be a daunting task, in and of itself.
There are some threads on some "Fuzzy Match" logic that may help you. See this link here:
Alan's UDFs for the Fuzzy Match problem
Quite frankly, if you have about 90% success with what you are doing now, I would say that is very good. You are going to be very hard-pressed to come up with any solution that handles 100% of the cases correctly, unless your data size is small and/or unchanging, so you are able to define all the rules (and not have to worry about new exceptions coming along later on down the road).