Суммирование слов в текстовой строке и его сортировка - VBA
Формулировка задачи:
Всем доброго утра.
Появился такой вопрос - по суммированию похожих слов.
То есть есть в строке ряд слов, идущих через значки "+".
И надо как-то определить - каких слов больше, каких меньше.
Подскажите - как макросом сложить количество похожих слов, приписав число сзади слова... и выстроить их в ячейке - по убыванию ?
То есть изначальный текст такой:
первое+пятое+третье+второе+четвертое+пятое+второе+второе+третье+второе
А с подсчитанными словами и рассортированный - он будет вот такой:
второе4+пятое2+третье2+первое1+четвертое1
Решение задачи: «Суммирование слов в текстовой строке и его сортировка»
textual
Листинг программы
Sub Pohoje() Dim S As String, S1 As String, I As Integer, J As Integer, Mas(), Nm() Dim L As Integer, K As Integer S = "первое + пятое + третье + второе + четвертое + пятое + второе + второе + третье + второе" S = S & "+" S = Replace(S, " ", "") K = 0 Do While S <> "" J = J + 1 ReDim Preserve Mas(J): ReDim Preserve Nm(J) I = InStr(S, "+") Mas(J) = Left(S, I - 1): S = Mid(S, I + 1) Do While I > 0 Nm(J) = Nm(J) + 1 I = InStr(S, Mas(J)) S = Replace(S, Mas(J) & "+", "", , 1) Loop Loop Do While J > 0 K = 0 For I = 1 To UBound(Nm) If K < Nm(I) Then K = Nm(I): L = I Next S = S & Mas(L) & K Nm(L) = 0 J = J - 1 Loop MsgBox S End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д