Sorry, but I have to say that this is a very poor design for a telephone directory.
Putting each contact in KM as a macro has lots of problems.
I'd suggest using a TAB-delimited text file, which you can easily create/maintain using Excel (always saving as text). You can then easily read the Phone Directory.txt file using KM, and search and parse it as needed.
I'll stop here for now, until you provide some feedback on my comment/suggestion.