Definindo o valor de uma caixa de combinação UserForm

(Reduzido da minha pergunta mais ampla eminsira a descrição do link aqui como recomendadoem meta.)

Eu tenho um formulário de usuário. Nesse formulário do usuário existem várias caixas de combinação para a seleção de ano, mês e dia. A caixa de combinação do dia é preenchida com números de até 28, 29, 30 ou 31, dependendo do ano e mês selecionado. Para evitar a seleção de itens como 31 de fevereiro, gostaria de verificar se o valor do dia selecionado excede o máximo desse mês e reduzi-lo adequadamente. No momento, eu tentei estas opções:

If Me.Combo_Day.Value > iMaxDate And iMonthNo > 0 And Not Me.Combo_Day.Value = "" Then Me.Combo_Day.Value = Me.Combo_Day.List(iMaxDate - 1)

e

If Me.Combo_Day.Value > iMaxDate And iMonthNo > 0 And Not Me.Combo_Day.Value = "" Then Me.Combo_Day.Value = iMaxDate

Nenhum deles funciona; sempre que a linha é analisada, recebo um erro 380 com a explicação "Não foi possível definir a propriedade Value. Valor da propriedade inválido".

Eu tentei mudar os dois.Text e.Value, e nenhum deles parece fazer muita diferença.Como altero o valor selecionado em uma caixa de combinação?

questionAnswers(1)

yourAnswerToTheQuestion