VBA Tutorial per Word

March 14

Visual Basic, Applications Edition (VBA) è un linguaggio di programmazione utilizzato per automatizzare le attività in Microsoft Word. Con Visual Basic si può fare qualsiasi operazione che si può fare in Word senza Visual Basic, ma più veloce. Questo è particolarmente vero per le operazioni che includono molte attività secondarie, come ad esempio la ricerca di una parola, seguita dalla selezione di parola, seguita da formattazione.

Il codice di esempio seguente mostra come è possibile iniziare a utilizzare VBA per produrre soluzioni pratiche per i problemi di elaborazione testi comune.

Inserisci il codice di esempio nell'IDE

Aprire MS Word e andare l'IDE di Visual Basic (ambiente di sviluppo integrato) premendo Alt-F11.

Nella finestra del codice, inserire il seguente codice di programma.

Mac Public Sub ()
r Dim come gamma
Dim w come gamma
Dim i As Integer
Dim t As String

Options.DefaultHighlightColorIndex

Set r = Selection.Range

r.StartOf (wdParagraph)

r.Expand wdParagraph

r.Find.ClearFormatting
r.Find.Replacement.ClearFormatting
r.Find.Replacement.Highlight = True
With r.Find
.Text = "is"
.Replacement.Text = "is"
.Forward = True
.Wrap = wdFindStop
.Format = True
.MatchCase = False
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
r.Find.Execute Replace:=wdReplaceAll

End Sub

È possibile ottenere un senso di ciò che questo programma farà da notare determinate parole chiave all'interno di esso: punto, trovare, e la selezione, per esempio. Il programma trova e mette in evidenza tutte le occorrenze di una parola si specifica, all'interno del paragrafo corrente.

Notate queste due righe nel codice:
.text = "È"
.Replacement.Text = "È"

Quelle linee dire a Word che cosa cercare. Al posto di chi "è" s, entra qualunque parola o il testo che desideri cercare e highlight.

Esecuzione del programma

Tornare a Word (ALT-F11), e inserire un paio di paragrafi vale la pena di testo. Tali punti devono contenere almeno un paio di occorrenze del termine di ricerca di cui sopra che hai scelto.

Quando hai terminato di inserire il testo, posizionare il cursore all'interno di qualsiasi dei paragrafi. Eseguire il programma: scegliere alt-F8 per aprire la finestra di macro-replay. Selezionare il "mac" macro, e premere Esegui. Se Word rileva tutte le istanze della parola di ricerca si è specificato nel paragrafo contenente il cursore, che metterà in evidenza la parola.

Capire per adattarlo

Digitando in un singolo script può migliorare il flusso di lavoro un po '. Ma se si capisce come funziona lo script, è cominciare a migliorare il flusso di lavoro notevolmente, e su base perpetua.

Ritorna alla IDE di Visual Basic e guardare il codice del programma all'interno della funzione mac. Si noti come la funzione di Mac arriva al paragrafo corrente per fare il suo funzionamento sostituirlo: si guarda l'oggetto Selection, che rappresenta il punto di testo o di inserimento attualmente selezionato. Poi, usando rappresentazione interna di Word del documento, lo script "leapfrogs" dal punto di inserimento corrente all'inizio del paragrafo che contiene il punto di inserimento.

Questo tipo di movimento è reso possibile da una rete di collegamenti all'interno VBA per Word. La selezione corrente è collegata alla parola corrente, la frase corrente e paragrafo corrente. In particolare, i collegamenti MAC o leapfrogs dalla selezione corrente per l'inizio del paragrafo corrente (insieme R = Selection.Range e r.StartOf (wdParagraph)). A quel punto, r è solo un punto di inserimento, ma vogliamo che si riferiscono a tutto il paragrafo, così abbiamo espanderla con r.Expand wdParagraph. Se si desidera cercare solo la frase corrente al posto del paragrafo corrente, sostituire tutte le istanze di wdParagraph nel codice di programma con wdSentence.