When you clear out your form, you are blanking out all the combo boxes. Each time you do this, you trigger the Change event, which calls Add_Scores. When weight is zero (because you blank it out, too), you get a divide-by-zero overflow.
You should not even be calling Add_Scores when you reset the form. You should have a global Boolean variable in your form, called something like Resetting. You set it to TRUE at the beginning of cmd_Reset_Click. Then in your combobox Change handlers, make the first line of code
Two other suggestions, from a user interface design standpoint. You have a lot of choices that are all Yes/No/NA. The user has to click twice on each one to select it, once to select it, and then to make a choice. And there are a lot of them. You can save the user a lot of time and frustration by using option buttons instead (one click each).
Second, rather than validating the input after the user clicks Save, keep the Save button disabled until the user has filled in all required data. The way it is now, if the user makes multiple mistakes, the code only tells him one at a time. I had to click Save several times to test your file.
Bookmarks