Are you certain the problem is in the button switch? I would try jumping a hot wire directly from the battery to the horn first, and seeing if that creates sound. If it doesn't, replacement horns are cheap, and come in all sorts of varieties.
If the horn works using the jumper, the problem is either in your switch, or your wiring. Wiring problems are tedious to track down, but if you go about it methodically, you will find the problem. Corroded or loose connections are common on these bikes, especially if the bike has been sitting for a while. It could also be a short (bare wire touching the bike frame or the handlebars, for example). You could just buy a new harnes and rewire the entire bike, but what fun would that be?
Have you checked the fuse?
Also, if your bike is anything like mine, disassembling and cleaning/repairing the internal parts of the switch button assembly is very easy. A little emory paper, some cleaner, dielectric grease, good near distance vision, and some small screwdrivers, etc, and you can get things right.
You will be happier having your stock switchgear than you will be finding a mismatched replacement.
Petaluma and Truckee, CA -- member since Jan. 23, 2003;
PREVIOUS KZs: 1980 KZ750H with 108,000 miles; 1980 KZ750E with 28,000 miles; and KZ750H street/cafe project, all sold a few years back.
This is what I do for fun, not for work. It is art, with a little engineering thrown in.