Try this.
Private Sub ComboBox1_Change()
Dim idx As Long
Dim rngCities As Range

    idx = ComboBox1.ListIndex

    If idx <> -1 Then
        ComboBox2.Clear
        With Sheet1
            Set rngCities = .Range(.Cells(2, idx + 1), .Cells(Rows.Count, idx + 1).End(xlUp))
        End With
        If Intersect(Sheet1.Cells(1, idx + 1), rngCities) Is Nothing Then

            If rngCities.Cells.Count > 1 Then
                ComboBox2.List = rngCities.Value
            Else
                ComboBox2.AddItem rngCities.Value
            End If
        Else
            ComboBox2.Clear
        End If
    End If
End Sub