VBA Search & Word Replacement

VBA Search & Word Replacement


Visual Basic for Applications (VBA) er et programmeringsspråk er innebygd i Microsoft Office sin Word, Excel og Access programmer. Brukere av disse programmene skrive skript med VBA å utvide standard funksjonaliteten til et program og for å automatisere oppgaver som utføres med programmet. En type av automatisering som brukes ofte i Word er at involverer søk og erstatt operasjoner på dokumentteksten. VBA kan tilpasse hvert enkelt trinn i disse operasjonene, inkludert generering av tekst for å søke etter, velge dokument delene skal søkes og etter hvert erstattet med flere operasjoner (for eksempel legge høydepunkter, krymper skriftstørrelse).

makroer

Word-brukere som er nye til å bruke VBA i søke operasjoner kan begynne å lære VBA ved å bruke Words makrofunksjoner. Makroer er små programmer, også kalt script, som registrerer handlinger en Word-bruker tar. For eksempel kan en Word-bruker begynne innspillingen av en makro, og trykk deretter på "Control-F" for å åpne Word dialogboksen Søk. Hun vil angi noe tekst å søke etter, og trykk deretter på "Søk" knappen for å starte selve søket. Når hun slutter opptaket, vil Word makro opptaker har generert et lite skript som utfører søket etter den samme teksten som brukeren søker etter.

Skrive manuset uten å ta den

Tradisjonelt dataprogrammer, inkludert skript laget med VBA, ikke blir registrert, men snarere er skrevet av programmerere. Selv om opptak skript kan være en enkel og rask måte å produsere programmer, programmer denne tilnærmingen skaper vanligvis tar opp mer ressurser datamaskin (f.eks RAM og behandlingstid) enn det som er nødvendig. Som kontrast kan skrive VBA programmer for hånd i VBA IDE (integrert utviklingsmiljø) ta litt ekstra arbeidsinnsats, men føre til raske programmer tilpasset de nøyaktige oppgaver som de er skrevet.

Eksekuteringsfunksjonen

For å skrive en tilpasset søkeoperasjon for hånd, vil VBA programmerer arbeider med VBA Utfør funksjonen. Denne funksjonen er en del av et Word-komponent kalt Utvalg objektet, som lagrer øyeblikket uthevet tekst. Eksekuteringsfunksjonen tar flere argumenter, som er de spesifikasjonene en funksjon bruker for å gjøre jobben sin. En av Execute argumenter er "FindText", som er teksten som programmet vil søke etter. Her er et eksempel på et lite program som fyller ut FindText argument:

Sub FindSomething ()
Dim x
x = Selection.Find.Execute (FindText: = "the")
End Sub

Utføre en Erstatt Drift

Den programmeringskode som brukes til å utføre en enkel erstatte operasjon er lik den koden for funn drift. Programmerere angi erstatningsteksten som et argument for å Execute funksjon. Her er et annet program for å illustrere en erstatte operasjon som vil endre alle forekomster av ordet "noe" i et dokument til teksten "somethingElse":

Sub ReplaceSomething ()

Dim x

x = Selection.Find.Execute (FindText: = "noe", ReplaceWith: = "somethingElse")

End Sub

Angi alternativer

Ved å bruke Execute funksjonens andre argumenter, kan programmerere angi alternativer for søk og erstatt-operasjoner. Disse alternativene er de samme som de som er tilgjengelige i Word "Søk og erstatt" dialogboksen: "matche hele ordet", "kamp case" og andre.

Programmer som tilpasse søk og erstatt operasjoner er ikke begrenset til bare eksekuteringsfunksjonen argumenter. Annen programmering kan tilsettes for å manipulere funnet tekst på måter vanskelig å oppnå uten programmering. For eksempel kan en programmerer spesifisere at et erstatningsoperasjon bruk skiftende dynamisk erstatning tekst, for eksempel det første ordet i avsnitt som inneholder søkeordet.