Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim arr, arr1, arr2
Dim x&, y&, k&, d As New Dictionary
arr = Range("A1").CurrentRegion
If Target.Address = "$C$1" Then
For x = 2 To UBound(arr)
arr(x, 1) = Replace(Replace(arr(x, 1), "、", "/"), " ", "/")
arr1 = Split(arr(x, 1), "/")
For y = 0 To UBound(arr1)
If Not d.Exists(arr1(y)) Then
k = k + 1
d.Add arr1(y), ""
End If
Next
Next
With Range("C1").Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=Join(d.Keys, ",")
End With
End If
End Sub