Use the combo box's KeyPress event. The .Text property gives what's currently visible in the text box part (as opposed to the .Value property, which gives the last completely entered value). So just check .Text; if it's empty, any key is ok. If it's not empty, you test the keystroke for validity, and if it's not valid, you beep and set the KeyAscii argument to 0 to cancel the keystroke. Rick Sprague