Guardar copias personalizadas de un documento (Microsoft Word)
Cuando trabaje con otras personas de su empresa o quizás con un grupo de clientes, es posible que desee crear un archivo personalizado para cada cliente. Si bien puede ser mejor hacer la creación utilizando una combinación de correspondencia, si sus necesidades de personalización son modestas, existe una manera más fácil.
Empiece por crear un archivo de texto regular que contenga los nombres de las personas que recibirán su documento, un nombre por línea. Luego, la macro incluirá el nombre en el encabezado de un documento y guardará el documento con el nombre de esa persona. Por lo tanto, si su archivo de texto tiene quince personas, terminará con quince copias del documento, una por persona. Cada uno será personalizado con el nombre del individuo en el encabezado.
El proceso para realizar esta tarea es bastante sencillo: abra el archivo de texto, tome un nombre, póngalo en el encabezado y luego guarde el documento. Se toma otro nombre y el proceso se repite hasta que no hay más nombres en el archivo. La siguiente macro implementa dicho proceso:
Sub SaveNameFiles() Dim sName As String Dim sFile As String Open "c:/names.txt" For Input As #5 On Error Resume Next Do While Not EOF(5) ' get the name Line Input #5, sName sFile = sName & ".doc" sFile = "c:\mypath\" & sFile ActiveWindow.ActivePane.View.SeekView = _ wdSeekCurrentPageHeader Selection.WholeStory Selection.Delete Selection.TypeText Text:=sName ActiveWindow.ActivePane.View.SeekView = _ wdSeekMainDocument ActiveDocument.SaveAs FileName:=sFile Loop Close #5 ActiveWindow.ActivePane.View.SeekView = _ wdSeekCurrentPageHeader Selection.WholeStory Selection.Delete ActiveWindow.ActivePane.View.SeekView = _ wdSeekMainDocument End Sub
La parte complicada de la macro es usar la propiedad .SeekView para especificar con qué historia en el documento desea trabajar. Como se implementa aquí, la propiedad .SeekView se usa repetidamente para cambiar entre el área de encabezado y el documento principal.
Tenga en cuenta también que la variable sFile especifica el nombre del archivo en el que se guardará el documento personalizado. Inmediatamente después de tomar el nombre del archivo de texto, la variable sFile se construye agregando la extensión de archivo .doc y la ruta al frente del nombre del archivo. (Debe cambiar la ruta por una que sea apropiada para su sistema).
La operación de guardado real es relativamente fácil; el método .SaveAs se utiliza con un nombre de archivo. Esta es la línea de código más propensa a errores en la macro, ya que uno de los nombres leídos del archivo podría incluir caracteres que son inapropiados para nombres de archivo válidos. Si este es el caso, se genera un error y la macro continúa con la siguiente línea. Sin embargo, el documento no se guardará con el nombre infractor.
Una vez que se completa el bucle (captura de nombres y guardado), el área de encabezado se borra y .SeekView se cambia de nuevo al documento principal.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios WordTips), he preparado una página especial que incluye información útil.
link: / wordribbon-WordTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
WordTips es su fuente de formación rentable en Microsoft Word.
(Microsoft Word es el software de procesamiento de texto más popular del mundo). Esta sugerencia (7983) se aplica a Microsoft Word 2007, 2010, 2013, 2016, 2019 y Word en Office 365. Puede encontrar una versión de esta sugerencia para interfaz de menú anterior de Word aquí:
link: / word-Saving_Personalized_Copies_of_a_Document [Guardar copias personalizadas de un documento]
.