Most Rams contain a list of different speeds and latencies/timings they support and has been tested with so that the motherboard can switch the speed down to a supported (for both) speed. This is called the SPD table. If your ram doesn't contain speeds that the MacBook allows it won't be able to use the ram.
If the Rams are originally from Apple it could be that they ordered them with just a specific speed in the SPD as they'd normally only require one speed for their current iMac.
The SPD table is the reason a 1333MHz memory won't run at 1867MHz if put in a computer capable of the higher speed, most PC "overclocking" motherboards can disregard the SPD table to allow overclocking of the ram.
In my experience the only Rams with only a specific speed in the SPD is cheap ram sticks bought from eBay and similar sites. Seems they cut cost by only testing and allowing a single speed
Historically there has been SPD editors out there (but requires the SPD to be writeable). If you could flash the appropriate values to the ram it should become "compatible". I've done this myself a bunch of years ago to match a few sticks of ram to a system I owned which wouldn't work with the ram I had purchased for it.
Also to add to the above I can say that most memories sold by eg. Kingston, Crucial and so on as "Compatible" or "Specific For" are more or less their normal assortment of RAM-chips that they just test with the brands/models recommended values in the SPD Table and/or chip configuration (chip density and so on), add these values to the SPD and slap a "Compatible with Brand - Model" sticker on them.