Я ищу способ автоматического форматирования даты в текстовом поле VBA в формате MM/DD/YYYY, и я хочу, чтобы он форматировался, когда пользователь вводит его. Например, как только пользователь вводит во втором номере программа автоматически вводит "/". Теперь я получил эту работу (а также вторую тире) со следующим кодом:
Private Sub txtBoxBDayHim_Change()
If txtBoxBDayHim.TextLength = 2 or txtBoxBDayHim.TextLength = 5 then
txtBoxBDayHim.Text = txtBoxBDayHim.Text + "/"
End Sub
Теперь это отлично работает при наборе текста. Тем не менее, при попытке удалить он все еще входит в тире, поэтому его невозможно удалить из одной из тире (удаление тире приводит к длине 2 или 5, а потом снова запускается, добавив другой тире). Любые предложения по лучшему способу сделать это?