V souboru Test_medzera.xlsx vložte tam, kde chcete mít pevné mezery podtržítko (nahraďte současné pevné mezery podtržítkem).
Otevřete soubor Test_medzera.docx, stiskněte kombinaci Alt+F11 a v projectu TestMedzera 2x klikněte na ThisDocument. Vložte kódOption Explicit
Dim WithEvents wdApp As Word.Application
Private Sub Document_Open()
Set wdApp = Me.Parent
End Sub
Private Sub Document_Close()
Set wdApp = Nothing
End Sub
Private Sub wdApp_WindowSelectionChange(ByVal Sel As Selection)
Debug.Print wdApp.Name
Dim f As Field
For Each f In ActiveDocument.Fields
If f.Type = wdFieldMergeField Then
f.Result.Text = Replace(f.Result.Text, "_", Chr(160))
End If
Next f
Set f = Nothing
End Subsoubor uložte s povolenými makry (.docm) zavřete a otevřete.
Nyní, pokud překliknete záznamy, načte se záznam a v něm se změní všechna podtržítka na pevné mezery. Není to nic moc, ale mně to funguje. Nicméně Word (stejně jako Excel) má tendenci zapomínat hodnoty proměnných, takže se může stát, že časem to podtržítko měnit nebude. Pak je třeba tento dokument zavřít a znovu otevřít. Další možností je přidat na stránku tlačítko. Vyzkoušejte, uvidíte.
Jen podotýkám, že s VBA ve Wordu moc zkušeností nemám a s Wordem moc nepracuji. Takže možná (pravděpodobně) existuje sofistikovanější řešení.citovat