Excel - Kun ved at holde specifik tekst i en celle
Problem
Jeg har en Excel-fil, der har data dumpet fra ekstern kilde (P6). En celle indeholder mange data, som jeg kun har brug for meget specifikke.
Her er hvad 5 celler ser ud:
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
Jeg vil gerne slette SEA- og hold så kun forkortelserne, der starter med MV.
Opløsning
Forudsætninger
- 1. Dataene findes i kolonne A
- 2. Resultatet skal vises i kolonne B
Sub-ekstraktMV () Dim lMaxRow Så lang Dim-rækkeIdx Så lang Dim inString Som streng Dim outString Som streng Dim sTemp Som streng Dim iLoc som helhed lMaxRows = Celler (Rækker.Count, "A"). Slut (xlUp) .Row For rowIdx = 2 Til lMaxRows inString = Trim (celler (rowIdx, "A")) outString = "" iLoc = 0 sTemp = "" iLoc = InStr (1, inString, ", ") Gør mens (iLoc> 0) sTemp = Trim Venstre (inString, iLoc - 1)) Hvis (Venstre (sTemp, 6) = "SEA-MV") Så outString = outString & ", " & Mid (sTemp, 5) Afslut, hvis inString = Trim (Mid (inString, iLoc + 1)) iLoc = InStr (1, inString, ", ") Loop If (Venstre (inString, 6) = "SEA-MV") Så outString = outString & ", " & Mid (inString, 5) (Venstre (outString, 1) = ", ") Så outString = Trim (Mid (outString, 2)) Afslut hvis celler (rowIdx, "B") = outString Next End Sub
Bemærk
Takket være rizvisa1 for dette tip på forummet.