添加包含逗号的条目的数据validation列表

我正在使用此代码将一个定义的列表添加到单元格。 我希望填写这个列表的条目的范围在它们的名字中有逗号。 代码然后将该行识别为TempListstring中的两个或更多项目。 有没有办法在项目中join逗号,而不是分开?

Sub DefinedPartnerListPop() Dim rList As String Dim MyCol As Collection Dim i, n, k, j, a As Integer Dim TempList, Partner As String Dim WSHT, WSHT2 As Worksheet Dim Swap1, Swap2 Set WSHT = Sheet1 With WSHT a = WorksheetFunction.CountA("A1:A13") k = WorksheetFunction.CountA(.Range("A:A")) - a Set MyCol = New Collection For i = 1 To k If Len(Trim(.Range("B" & 13 + i).Value)) <> 0 And .Range("A" & 13 + i) <> "" Then On Error Resume Next Partner = .Range("B" & 13 + i).Text MyCol.Add Partner On Error GoTo 0 End If Next i For n = 1 To MyCol.Count TempList = TempList & "," & MyCol(n) Next TempList = Mid(TempList, 2) End With With WSHT .Range("B12").ClearContents: .Range("B12").Validation.Delete With .Range("B12") With .Validation 'Call UnProtectChecklistSht .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=TempList .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End With End With End Sub 

您正尝试使用内部VBAstring作为DV条件列表。 VBA假定逗号分隔DV列表的项目。

如果要在逗号分隔符列表中包含逗号符号,则应将列表放入数组单元格中,并使用该数组单元格作为条件。

看到:

我的问题