In molti programmi di videoscrittura, un autore può richiamare materiale tra virgolette. Ad esempio, la prima volta che viene introdotto un termine, l’autore può racchiudere il termine tra virgolette. In Word, tuttavia, puoi richiamare le informazioni in corsivo. Cambiare manualmente il materiale citato in corsivo può richiedere molto tempo.

La seguente macro, QuotesToItalics, controlla il paragrafo corrente per il materiale citato. Se ce n’è, elimina le virgolette e cambia il testo tra le virgolette in corsivo. Se le virgolette sono sbilanciate (sono presenti virgolette di apertura o chiusura senza virgolette di chiusura o apertura corrispondenti), le virgolette vengono ignorate e non vengono apportate modifiche. La macro funziona con virgolette regolari o virgolette intelligenti.

Sub QuotesToItalic()

Dim Redo As Boolean     Dim Ptr As Integer     Dim Ptr1 As Integer     Dim P As String     Dim P1 As String

If Selection.ExtendMode Then Exit Sub     Redo = True     While Redo         Selection.StartOf Unit:=wdParagraph, Extend:=wdMove         Selection.MoveEnd Unit:=wdParagraph         P = Selection.Text         Ptr = InStr(P, Chr(34))

If Ptr = 0 Then Ptr = InStr(P, Chr(147))

If Ptr > 0 Then             Selection.MoveLeft Unit:=wdCharacter, Extend:=wdMove             Selection.MoveRight Unit:=wdCharacter, Count:=Ptr             Selection.MoveEnd Unit:=wdParagraph             P1 = Selection.Text             Ptr1 = InStr(P1, Chr(34))

If Ptr1 = 0 Then                 Ptr1 = InStr(P1, Chr(148))

EndChar = Chr(148)

Else                 EndChar = Chr(34)

End If             If Ptr1 > 0 Then                 Selection.MoveLeft Unit:=wdCharacter, Count:=2, _                   Extend:=wdMove                 Selection.Delete Unit:=wdCharacter                 Selection.MoveRight Unit:=wdCharacter, _                   Count:=Ptr1 - 1, Extend:=wdExtend                 Selection.Font.Italic = True                 Selection.MoveRight Unit:=wdCharacter, Extend:=wdMove                 Selection.Delete Unit:=wdCharacter             Else                 Selection.MoveRight Unit:=wdCharacter, Extend:=wdMove                 Redo = 0             End If         Else             Selection.MoveRight Unit:=wdCharacter, Extend:=wdMove             Redo = 0         End If     Wend End Sub

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti WordTips), ho preparato una pagina speciale che include informazioni utili.

WordTips è la tua fonte di formazione economica su Microsoft Word.

(Microsoft Word è il software di elaborazione testi più popolare al mondo.) Questo suggerimento (9502) si applica a Microsoft Word 2007, 2010, 2013, 2016, 2019 e Word in Office 365. Puoi trovare una versione di questo suggerimento per vecchia interfaccia del menu di Word qui: