Я использовал следующий скрипт, который я получил откуда-то здесь, он просматривает слова в ячейке и помещает их в следующий столбец, если есть дубликат, он работает очень хорошо.
Моя проблема в том, что если есть запятая, она ее не видит, например,
большой красный большой, зеленый большой должен показывать большой большой большой в следующем столбце, но показывает только 2 из них из-за запятой, и яне хочу удалять запятую, просто удалите ее на время выполнения скрипта
Sub FindDuplicates()
Dim i As Long
Dim j As Integer
Dim k As Integer
Dim WS As Worksheet
Dim WordArr As Variant
Dim DubStr As String
Dim WordCount As Integer
Set WS = ActiveSheet
'Loop cells
For i = 1 To WS.Cells(Rows.Count, 1).End(xlUp).Row
'Split cell words into array
WordArr = Split(WS.Cells(i, 1).Value, " ")
'Loop through each word in cell
For j = LBound(WordArr) To UBound(WordArr)
WordCount = 0
'Count the occurrences of the word
For k = LBound(WordArr) To UBound(WordArr)
If UCase(WordArr(j)) = UCase(WordArr(k)) Then
WordCount = WordCount + 1
End If
Next k
'Output duplicate words to string
If WordCount > 1 And InStr(1, DubStr, WordArr(j)) = 0 Then
DubStr = DubStr & WordArr(j) & " "
End If
Next j
'Paste string in column B
WS.Cells(i, 2).Value = Trim(DubStr)
DubStr = ""
Erase WordArr
Мои знания о VBA отсутствуют. Я пробовал такие вещи, как WordArr = Split (WS.Cells (i, 1).Value, "") WordArr = Replace (WordArr, ",", "")
, но это выдает ошибку 13
Может ли кто-нибудь указать мне правильное направление
Спасибо