Sobre macros en MS Word

Me gustaria saber si existe alguna forma de hacer una macro en MS Word que busque lo que haya en ese momento en el portapapeles.

La Macro debería tener esta forma, poniendo Selection.Paste no funciona.

Selection.Find.ClearFormatting
With Selection.Find
.Text = ???????????????
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
A que te refieres con lo de con selection.paste no funciona? Quiero decir que si dices que no busca o que lo que quieres es que busque directamente en el contenido del portapapeles sib pegarlo en el documento?

Private Sub CommandButton1_Click()
Selection.Paste
Selection.Find.ClearFormatting
With Selection.Find
.Text = "solo"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
   
   
End Sub


a mi me ha funcionado esto :D lo que hace es pegar el portapapeles en el documento y hacer la busqueda, después puedes elimar lo pegado con selection.Delete, tambien podrias crear un documento nuevo para hacer la busqueda y luego borrarlo.
Yui_K escribió:A que te refieres con lo de con selection.paste no funciona? Quiero decir que si dices que no busca o que lo que quieres es que busque directamente en el contenido del portapapeles sib pegarlo en el documento?

Private Sub CommandButton1_Click()
Selection.Paste
Selection.Find.ClearFormatting
With Selection.Find
.Text = "solo"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
   
   
End Sub


a mi me ha funcionado esto :D lo que hace es pegar el portapapeles en el documento y hacer la busqueda, después puedes elimar lo pegado con selection.Delete, tambien podrias crear un documento nuevo para hacer la busqueda y luego borrarlo.


No, con esa Macro te sustituira siempre el termino "solo".

Yo necesito una macro que busque lo que haya en ese momento en el portapapeles (que sera diferente segun las circunstancias).
ah, vaya no te habia entendido :(
3 respuestas