English (United Kingdom)

Fermu Website

Home Articles Office Office Cómo numerar secuencialmente imágenes en un documento de Word
Cómo numerar secuencialmente imágenes en un documento de Word PDF Print E-mail
User Rating: / 2
PoorBest 
Written by monica   
Sunday, 28 October 2007 13:34

En ocasiones quizás nos hayamos encontrado con un documento repleto de imágenes y necesitamos asignarles una numeración a las mismas de una forma rápida. Pues bien, Esta macro que os presentamos realiza la tarea por vosotros,

Nuestra macro identificará cada imagen que tengáis en vuestro documento y le asignará un nombre basado en un número que irá correlativo. Del mismo modo, si eliminamos una imagen, esto no afectará a la numeración ya que se volverán a renumerar todas de modo que siempre tengan un número secuencial y correlativo a la serie comenzada. La macro, al estar basada en campos precisará que se actualicen los mismos para poder trabajar correctamente. Acordaros siempre de actualizar mediante el atajo de teclado Ctrl + E para seleccionar todo el documento, y luego tecla F9.

Si ya tenemos todas las imágenes en un documento y queremos ponerles al pie una secuencia numérica utilizaremos el siguiente código,

 

 

 

 Sub Insertar_numeracion_Image()

 Dim x As Object
 For Each x In ActiveDocument.InlineShapes

 With x.Select

 With Selection
   .InsertAfter vbCr & "imagen Nº" _
     & vbCr
    .MoveDown Unit:=wdLine, Count:=1
    .TypeBackspace
    .Fields.Add Range:=Selection.Range, _
    Type:=wdFieldSequence, _
    Text:="AUTONUM \* Arabic", _
    PreserveFormatting:=True
    .TypeText Text:=" " & vbTab
    'Las siguientes lineas al gusto _
     se pueden suprimir o poner una u otra
    '.EndOf Unit:=wdStory o .HomeKey Unit:=wdStory


 End With
 End With


 Next

 End Sub

 

Si vamos a agregar imagenes a nuestro documento y queremos numerarlas una a una situandonos en el pie de la imagen por ejemplo, entonces  deberemos utilizar además esta macro >>

 

   Sub Insertar_field_Autonum() 


   With Selection
   .TypeText Text:=" imagen Nº" & vbCr
   .TypeBackspace
    .Fields.Add Range:=Selection.Range, _
    Type:=wdFieldSequence, _
    Text:="AUTONUM \* Arabic", _
    PreserveFormatting:=True
   End With

 End sub

 

La única precaución a tomar para ejecutar esta macro es poner el curso al pie de la imagen que queremos empezar a numerar, ya que de otro modo insertaría la numeración a partir de donde tengamos el cursor.

 

La macro funcionará si tenemos las imágenes en línea con el texto, pero no si son flotantes.

 
Si tuviéramos imágenes de este tipo, tendríamos que cambiar la siguiente línea correspondiente a la primera macro;

For Each x In ActiveDocument.InlineShapes

Por esta otra,

For Each x In ActiveDocument.Shapes

Y eso es todo, os recordamos que tenéis a vuestra disposición nuestros foros para cualquier duda que os pudiera surgir.

 

 

Trackback(0)
Comentarios (3)Add Comment
RE: No veo la macro
escrito por fermu, November 12, 2007
No me seas vago y accede a la url del articulo... en el rss sólo sale un resumen :roll
http://www.fermu.com/content/view/552/1/lang,es/
enviar abuso
vote negativo
vote positivo
Votos: +0
No veo la macro
escrito por Perseverante, November 09, 2007
:roll
Seguro que estoy despistadillo. Me estoy leyendo esta fuente con el RSSbandit.
Dónde está la macro ?
Besitos
enviar abuso
vote negativo
vote positivo
Votos: +0
Macro en Word
escrito por Snaked514, November 06, 2007
Está muy buena esta macro, la duda que tengo es por lo menos en mi caso, de cómo hacer esta macro? ya que no tengo conocimiento de hacerla o cómo insertarla? (si se puede? :?

Gracias

PD es para Office 2007?
enviar abuso
vote negativo
vote positivo
Votos: +0

Escribir comentario
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
más pequeño | más grande

busy
Last Updated ( Sunday, 07 September 2008 18:47 )
 
Web www.fermu.com

Logon


Gente Online

We have 350 guests and 2 members online
Joomla Templates by JoomlaShack