Для простоты предположу, что ваша начальная строка выглядит следующим образом:
молоко, молоко с медом, хлеб, молоко с хлебом, масло сливочное, молоко с маслом
... и что он хранится в cell A1
листа с именем Sheet1
.
Первое, что я хотел бы сделать, чтобы облегчить свою жизнь, это использовать Text to Columns
и определите comma
как разделитель. Это разделит вашу исходную строку на столько ячеек, сколько потребуется, первая будет сохранена в A1
.
Затем, чтобы найти, какая из отдельных строк начинается со слова milk
, и объединить их в одна новая строка с именем output
, я бы сделал следующее:
Option Explicit
Sub milk()
Dim output As String
Dim inputRng As Range, cell As Range
Dim sht As Worksheet
Set sht = ThisWorkbook.Worksheets("Sheet1")
output = ""
With sht
Set inputRng = .Range(.Range("A1"), .Cells(1, .Columns.Count).End(xlToLeft))
End With
For Each cell In inputRng.Cells
If InStr(1, cell.Value, "milk") = 1 Then
output = output & cell.Value & ", "
End If
Next cell
MsgBox output
End Sub