Lori ha chiesto un modo semplice per determinare se un paragrafo “trabocca” su più di una riga. Sembra che quando Lori stava unendo le etichette, se una riga (paragrafo) scorre e va a capo alla riga successiva dell’etichetta, voleva ridurre la dimensione in punti sul testo in modo che la riga occupasse proprio quello: una singola riga.

Il ritorno a capo è una funzione in tempo reale (e in fase di stampa) di Word. Word esegue continuamente calcoli interni per stabilire cosa visualizzare sullo schermo o cosa stampare su carta. Quando il testo va a capo da una riga all’altra, in realtà non c’è nulla per contrassegnare il punto di ritorno a capo (come in alcuni altri elaboratori di testi), quindi non c’è nulla da cercare o trovare effettivamente. Inoltre, la funzione Trova di Word non ha un’opzione (speciale o meno) per cercare cose e dire su quante righe si trovano le cose trovate.

È possibile fare una lunga serie di operazioni di ricerca e sostituzione per cercare di “ingannare” e scoprire le linee troppo lunghe. Ad esempio, potresti seguire questi passaggi generali:

  1. Sostituisci tutti gli spazi in un documento unito con una combinazione di caratteri standard, come [s].

  2. Sostituisci tutti i trattini in un documento unito con una combinazione di caratteri standard, come [d].

  3. Ora, tutti i paragrafi del documento sono costituiti da una singola parola combinata.

  4. Eseguire lo strumento di sillabazione per sillabare manualmente il documento.

  5. Ogni volta che Word trova una riga che deve essere sillabata, è possibile ridurre la dimensione in punti di quella riga.

  6. Ripeti le sostituzioni, riporta [s] e [d] ai loro normali spazi e trattini.

Questo può sembrare un po ‘complicato, e lo è. Ma funzionerà abbastanza bene, a meno che tu non voglia entrare nella scrittura di una macro. (Che tu ci creda o no, anche se non usi le macro così spesso, questa particolare macro è molto più facile che ripetere i passaggi precedenti più e più volte.)

Quando si cerca di decidere come mettere insieme la macro, ci attende una triste scoperta in VBA. Gli utenti veterani di Word ricorderanno che quando si utilizza la funzione Conteggio parole in Word, il programma mostra il numero di righe nel documento. Ciò implicherebbe che è possibile utilizzare VBA per determinare il numero di righe in una selezione. Sfortunatamente, la proprietà ReadabilityStatistics in VBA non restituisce una statistica per il numero di righe. Ciò significa che la statistica mostrata nella finestra di dialogo Conteggio parole viene calcolata internamente secondo necessità.

L’unica soluzione apparente è fare affidamento sulla proprietà Information per wdFirstCharacterLineNumber, che restituisce il numero di riga per il primo carattere in una selezione. Sfortunatamente, non è specificato wdLastCharacterLineNumber in VBA, quindi la macro deve effettuare una selezione per il primo carattere in un paragrafo, confrontarlo con una selezione dell’ultimo carattere in un paragrafo e vedere se vengono restituiti gli stessi due numeri di riga. In caso contrario, è possibile ridurre la dimensione in punti del paragrafo e eseguire un altro calcolo.

La seguente macro VBA, ParaforceOneLine, esegue proprio questo processo. Esamina ogni paragrafo in un documento e, se un dato paragrafo si trova su una singola riga, la dimensione in punti di quel particolare paragrafo viene ridotta fino a quando non può stare su una singola riga.

Sub ParaForceOneLine()

Dim objPara As Paragraph     Const ChangeSize = 0.5

For Each objPara In ActiveDocument.Paragraphs         With objPara.Range             While .Information(wdFirstCharacterLineNumber) <> _               .Characters(Len(.Text)).Information(wdFirstCharacterLineNumber)

.Font.Size = .Font.Size — ChangeSize             Wend         End With     Next objPara 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 (1415) si applica a Microsoft Word 97, 2000, 2002 e 2003. È possibile trovare una versione di questo suggerimento per l’interfaccia della barra multifunzione di Word (Word 2007 e più tardi) qui: