Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Ofimática (http://www.forosdelweb.com/f90/)
-   -   Macro que borre los marcadores (http://www.forosdelweb.com/f90/macro-que-borre-marcadores-413417/)

cuencacritica 31/07/2006 05:17

Macro que borre los marcadores
 
Hola compañeros de abatares,

Estoy haciendo una aplicación en Delphi que me permite editar un documento de Word, y sustituye algunos Marcadores (Bookmarks) por contenidos de la aplicación.
Código:

Marcador:='FechaHoy';
Contenido:=Edit4.Text;
MiDocumento.Bookmarks.Item(Marcador).Range.Text:=Contenido;

Hasta ahí todo correcto, pero cuando edito varias veces ese documento no elimina el contenido anterior del marcador, y lo repite tantas veces como lo haya editado:
Esta sería el resultado de editar el documento 3 veces:
Fecha: 31/07/2006.31/07/2006.31/072006.:molesto:

Tras un montón de intentos de solventar este problema en delphi, se me ha ocurrido crear una Macro en Word que elimine el contenido de todos los marcadores:
Código:

Sub Macro1() AutoOpen
'
' Macro1 Macro
' Macro grabada el 31/07/2006 por mi.
' "&chr(10)&"Limpiar el contenido de los marcadores al abrir el documento
'
    With ActiveDocument.Bookmarks
        .Text = "***"
    End With
End Sub

Pero no funciona.
¿Alguien puede ayudarme?

gracias por anticipado

abrahamvj 31/07/2006 09:33

Te pongo un ejm de una macro en word que borra un marcador llamado abc:

Sub borrando()

ActiveDocument.Bookmarks("abc").Delete

With ActiveDocument.Bookmarks
.DefaultSorting = wdSortByName
.ShowHidden = False
End With
End Sub

Abraham

cuencacritica 31/07/2006 10:58

Hola Abraham.
Gracias por responder.

Creo que no me has entendido, con tu macro eliminas el marcador, pero yo sólo quiero limpiar el texto( BookMarks.Text).
Esto sería una solución, en la primera edición sustituyo los marcadores por sus contenidos y después los elimino, y en futuras ediciones no hago nada.

Pero francamente me gustaría poder darles un nuevo valor cada vez que edito ese documento (imaginate que el marcador lleva una cuenta de cuantas veces he editado ese documento o la fecha de modificación, el valor lo tendré que modificar cada vez).

ta'luego


La zona horaria es GMT -6. Ahora son las 10:04.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.