Oprydning Tekst i en makro

Der har været mange makroer, som jeg har skrevet med det udtrykkelige formål at "rydde op" tekst forud for at gøre noget andet med det. For eksempel at indsætte det i et nyt dokument eller gemme det i en tekstfil. Ofte er denne proces er kedelig, der involverer undersøgelse af hvert tegn i en tekststreng og derefter gøre nogle beslutning om, hvad de skal gøre med det, hvis karakter ikke er inden for et interval af acceptable tegn.

VBA indeholder en interessant metode, der kan bruges til at hjælpe med at rydde op tekst. Det kaldes, passende nok, CleanString metode. Du bruger det som vist her:

sCleanedUp = Application.CleanString (Selection.Text)

Denne instans sætter sCleanedUp strengen svarende til en "ryddet op" version af den markerede tekst. Hvad betyder det CleanString metoden gøre? Det fjerner trykfri tegn i ANSI området fra 1 til 29, med undtagelse af 7, 9, 10 og 13. I tilfælde af ANSI karakter 7, fjernes, medmindre det er forud tegn 13, i hvilket tilfælde det er erstattet med en flig (ANSI 9). I tilfælde af ANSI karakter 10, erstattes med tegn 13, medmindre Forud karakter 13, i hvilket tilfælde det er fjernet. Characters 9 og 13 ændres ikke.

En række andre tegn uden for området fra 1 til 29 er også påvirket af CleanString metode. ANSI karakter 31 (ekstraudstyr bindestreg), karakter 172 (også en valgfri bindestreg), og tegn 182 (det afsnitstegn karakter) er alle fjernet. ANSI tegn 160 (non-breaking space), karakter 176 (anden ikke-breaking space), og tegn 183 (et punkttegn) hver udskiftes med mellemrum. Alle andre tegn er uændrede.

WordTips er din kilde til omkostningseffektiv Microsoft Word træning. (Microsoft Word er det mest populære tekstbehandlingsprogram i verden.) Dette tip (1460) gælder for Microsoft Word 97, 2000, 2002, og 2003. Du kan finde en version af dette tip til menufaner Word (Word 2007 og nyere) her: Oprydning Tekst i en makro.


© 2019 Zajacperrone.com | Contact us: webmaster# zajacperrone.com