Try this. This will change the values of your districts if you select a new year or a new station.Private Sub UserForm_Initialize() Dim x As Integer For x = 2010 To 2015 cboYear.AddItem x Next cboStations.AddItem "Annual" cboStations.AddItem "Urban" End Sub Private Sub cboStations_Change() If cboYear.Value <> "" Then UpdateDistrict End If End Sub Private Sub cboYear_Change() If cboStations.Value <> "" Then UpdateDistrict End If End Sub Private Sub UpdateDistrict() Dim myArray() Dim myElement As Variant cboDistrict.Clear myArray = Array() If cboStations.Text = "Annual" Then If cboYear.Text = "2010" Or cboYear.Text = "2011" Or cboYear.Text = "2012" Then myArray = Array("Abilene", "Amarillo", "Atlanta", "Austin", "Beaumont", "Brownwood", "Bryan", "Childress", "Corpus_Christi", "Dallas", "El_Paso", "Fort_Worth", "Houston", "Laredo", "Lubbock", "Lufkin", "Odessa", "Paris", "Pharr", "San Angelo", "San_Antonio", "Tyler", "Waco", "Wichita_Falls", "Yoakum") ' ElseIf cboYear.Text = "2011" Then ' myArray = Array("Abilene", "Amarillo", "Atlanta", "Austin", "Beaumont", "Brownwood", "Bryan", "Childress", "Corpus_Christi", "Dallas", "El_Paso", "Fort_Worth", "Houston", "Laredo", "Lubbock", "Lufkin", "Odessa", "Paris", "Pharr", "San Angelo", "San_Antonio", "Tyler", "Waco", "Wichita_Falls", "Yoakum") ' ElseIf cboYear.Text = "2012" Then ' myArray = Array("Abilene", "Amarillo", "Atlanta", "Austin", "Beaumont", "Brownwood", "Bryan", "Childress", "Corpus_Christi", "Dallas", "El_Paso", "Fort_Worth", "Houston", "Laredo", "Lubbock", "Lufkin", "Odessa", "Paris", "Pharr", "San Angelo", "San_Antonio", "Tyler", "Waco", "Wichita_Falls", "Yoakum") ' ElseIf cboYear.Text = "2012" Then ' myArray = Array("Abilene", "Amarillo", "Atlanta", "Austin", "Beaumont", "Brownwood", "Bryan", "Childress", "Corpus_Christi", "Dallas", "El_Paso", "Fort_Worth", "Houston", "Laredo", "Lubbock", "Lufkin", "Odessa", "Paris", "Pharr", "San Angelo", "San_Antonio", "Tyler", "Waco", "Wichita_Falls", "Yoakum") ' ElseIf cboYear.Text = "2013" Then ' myArray = Array() ' ElseIf cboYear.Text = "2014" Then ' myArray = Array() End If ElseIf cboStations.Text = "Urban" Then If cboYear.Text = "2010" Then myArray = Array("Abilene", "Amarillo", "Austin", "San_Antonio", "Waco", "Wichita_Falls") ElseIf cboYear.Text = "2011" Then myArray = Array("Beaumont", "Houston") ElseIf cboYear.Text = "2012" Then 'or just Else myArray = Array("Brownwood", "Bryan", "Childress", "Corpus_Christi", "El_Paso", "Lubbock", "Odessa", "Yoakum") ' ElseIf cboYear.Text = "2013" Then ' myArray = Array() ' ElseIf cboYear.Text = "2014" Then ' myArray = Array() End If End If For Each myElement In myArray cboDistrict.AddItem myElement Next End Sub