Excel - Поддържане само на конкретен текст в клетка

Проблем

Имам Excel файл, който има данни, изхвърлени от външен източник (P6). Една клетка съдържа много данни, от които имам нужда само от специфични.

Ето как изглежда 5 клетки:

 SEA-MVRV, SEA-RAD SEA-MVAOV, SEA-OPSSRO SEA-MVAOV1 SEA-CRNPOLAR, SEA-NPCOE, SEA-MMJBC, SEA-RAD, SEA-MVMM SEA-CRNPOLAR, SEA-MMJBC, SEA-RAD, SEA- NPCOE, SEA-MVMM 

Бих искал да изтрия SEA и след това да запазя само съкращенията, които започват с MV.

Решение

Предположения

  • 1. Данните са в колона А
  • 2. Резултатът трябва да бъде показан в колона Б

 Sub extractMV () Dim lMaxRow Както Дългата ред на DimIdx Дълго Dim inString Като String Dim outString Както String Dim sTemp As String Дим iLoc As Integer lMaxRows = Cells (Rows.Count, "A"). End (xlUp) .Row За rowIdx = 2 За lMaxRows inString = Trim (клетки (rowIdx, "A")) outString = "" iLoc = 0 sTemp = "" iLoc = InStr (1, inString, ", ") Докато (iLoc> 0) sTemp = Trim Отляво (inString, iLoc - 1)) Ако (наляво (sTemp, 6) = "SEA-MV") Тогава outString = outString & ", " & Mid (sTemp, 5) Край Ако inString = Trim (Mid (inString, iLoc) + 1)) iLoc = InStr (1, inString, ", ") Loop If (ляво (inString, 6) = "SEA-MV") Тогава outString = outString & ", " & Mid (inString, 5) приключва, ако (Ляво (outString, 1) = ", ") Тогава outString = Trim (Mid (outString, 2)) Край, ако клетките (rowIdx, "B") = outString Next End Sub 

Забележка

Благодарение на rizvisa1 за този съвет на форума.

Предишна Статия Следваща Статия

Топ Съвети