Utilizzo di una parte del nome file di un documento in un’intestazione (Microsoft Word)
Vladimir sa che può inserire il nome del file di un documento nell’intestazione di una pagina. Quello che vorrebbe, però, è che solo gli ultimi cinque caratteri del nome del file (esclusa l’estensione del nome del file) appaiano nell’intestazione. Sta cercando il modo migliore per portare a termine il compito.
L’unico modo per farlo è usare una macro; non è presente alcuna funzionalità incorporata in Word per eseguire l’attività. La macro deve determinare il nome del file, afferrare i caratteri desiderati e quindi inserire nell’intestazione. Tuttavia, ci sono potenziali complicazioni con qualcosa che potrebbe sembrare così semplice. Ad esempio, cosa succede se il documento non è stato salvato e quindi non ha ancora un nome file? Cosa succede se il documento è stato salvato, ma ci sono meno di cinque caratteri nel nome del file?
Cosa dovrebbe fare la macro se c’è già qualcosa nell’intestazione?
Cosa dovrebbe fare se l’utente guarda il documento in una vista che non mostra le intestazioni?
Per affrontare tali domande, la macro deve fare alcune ipotesi.
Per questo esempio, supponiamo che la macro debba semplicemente sostituire qualsiasi intestazione esistente con la parte desiderata del nome del file. Inoltre, la macro può cambiare la modalità di visualizzazione alla visualizzazione Layout di stampa in modo che sia facile lavorare con l’intestazione. Ecco il risultato:
Sub PartFilenameInHeader() Dim sName As String Dim J As Long sName = ActiveDocument.Name J = InStrRev(sName, ".") If J > 0 Then sName = Left(sName, J - 1) If Len(sName) > 5 Then sName = Right(sName, 5) End If If ActiveWindow.View.SplitSpecial <> wdPaneNone Then ActiveWindow.Panes(2).Close End If If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _ ActivePane.View.Type = wdOutlineView Then ActiveWindow.ActivePane.View.Type = wdPrintView End If ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader Selection.WholeStory Selection.Delete Selection.TypeText Text:=sName ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument Else MsgBox "Document has no filename extension." End If End Sub
La macro verifica innanzitutto che il documento abbia un nome file reale (dalla proprietà .Name dell’oggetto ActiveDocument). In tal caso, estrae cinque (o meno) caratteri dal nome del file. Verifica che non siano aperti più riquadri e che il documento sia in visualizzazione Layout di stampa. Quindi seleziona ciò che è attualmente nell’intestazione e lo sostituisce con i caratteri desiderati dal nome del file.
Comprendi che la macro dovrebbe essere eseguita una volta dopo aver salvato il documento e ancora una volta se salvi il documento utilizzando un nome file diverso.
_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 (13316) si applica a Microsoft Word 2007, 2010, 2013, 2016, 2019 e Word in Office 365.