I had the same issue with my Galaxy S10+. The contact was a Linked Contact, When you go in to the Contact before you select edit, go to the 3Dots in the upper right corner, Select Add/remove linked contacts, unlink whatever is linked, edit the one you need to edit, and then relink if you want, after you save changes.
Linked contacts are still stored individually on your phone. This is happening because one of your linked contacts that has no phone number is listed as your emergency contact.
While editing your contact, go through each linked contact and make sure each has a phone number listed. This will fix the issue.
Okay so this is one of those moments where user experience is key and they failed. What the phone is trying to tell you is that the person's phone number isn't saved to the actual phone. It's a Samsung, or Google contact, but there's no number in the contact information that's on the device storage. If you look at the tabs across the top when editing your contacts "Samsung | Phone | Google" and touch Phone. The phone number field is empty, because you're using the contact from your google account, or you Samsung account.
Thanks so much Joe, this was the issue for me!
Don't know why there are so many copies of the same contact!
Do you suppose it's because of using Samsung Smart Switch? - maybe it copies the contact each time (I've migrated from s4->s7edge->s10 and had 3 "phone" contacts all the same).
One of the google versions of this contact did not have the phone number. As soon as I put it in, I was able to save the edit (which was changing the ringtone, which I'm surprised did not save in my "smart switch".