У мене є стовпець, який може містити клітини, які мають дані, які розділені на | роздільник. Мені потрібно вміти переглядати кожну клітинку і знаходити конкретний текст, а якщо знайдений - витягти весь текст між |
Наприклад: клітинка A2 має blue story 1|red tree 2|orange flower 3|green car 4
Я хочу бути в змозі витягти red tree 2
за допомогою функції InStr
(Якщо є краща функція, будь ласка, порадьте!)
Ось код, який я наразі маю:
Sub test()
Dim Field As Variant, rng As Range, cell As Range
Set rng = Range("A1:A5")
For Each cell In rng.Cells
If InStr(cell.Value, "Red") > 0 Then
Field = Split(cell.Value, "|")
Cells(cell.Row, 2).Value = Field
End If
Next
End Sub
Існує явна логічна помилка, оскільки вона виводить перші тексти | в масиві, а не фактичний, що містить "Червоний".
Редагувати: мені потрібно, щоб він міг знайти "Червоний" у будь-якому масиві, і якщо він виведе цей масив у стовпці поруч з ним.