VBA, buscar texto y crear Marcadores
Publicado por Happy1 (13 intervenciones) el 06/02/2021 21:58:41
En el documento que les envío hay varios puntos del orden del día entre texto y hay creadas dos macros:
"Ini" que lo que hace es situándome en la segunda fila da formato al párrafo y del número del orden del día copia, por ejemplo, "pnlp0177", al final de la macro queda el texto con un formato y seleccionado "10L/PNLP-0177". Lo que hago a continuación es crear un Marcador (yo le he asignado la combinación de teclado Ctrl+Mayús+F5), llamo al Marcador y a continuación pulso Ctrl+V para pegar lo que ya he copiado en la macro.
"Ini2" esta segunda macro intento automatizar todo el proceso, busco "*10L/", ejecuto la macro Ini y finalmente crea el Marcador. Aquí me surgen dos problemas: solo me busca un punto del orden del día y tengo que ejecutar de nuevo la macro si quiero que busque más; y el segundo problema es que sí crea la macro pero a partir de la segunda pone el mismo nombre que el primer Marcador.
Las macros son:
Alguien me puede dar alguna pista de cómo solucionarlo?
Un saludo a todos y gracias.
"Ini" que lo que hace es situándome en la segunda fila da formato al párrafo y del número del orden del día copia, por ejemplo, "pnlp0177", al final de la macro queda el texto con un formato y seleccionado "10L/PNLP-0177". Lo que hago a continuación es crear un Marcador (yo le he asignado la combinación de teclado Ctrl+Mayús+F5), llamo al Marcador y a continuación pulso Ctrl+V para pegar lo que ya he copiado en la macro.
"Ini2" esta segunda macro intento automatizar todo el proceso, busco "*10L/", ejecuto la macro Ini y finalmente crea el Marcador. Aquí me surgen dos problemas: solo me busca un punto del orden del día y tengo que ejecutar de nuevo la macro si quiero que busque más; y el segundo problema es que sí crea la macro pero a partir de la segunda pone el mismo nombre que el primer Marcador.
Las macros son:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Sub Ini()
'
' Ini Macro
'
'
Selection.MoveUp Unit:=wdParagraph, Count:=1
Selection.Paragraphs.Indent
Selection.MoveRight Unit:=wdWord, Count:=6, Extend:=wdExtend
With Selection.Font
.Name = "Arial"
.Size = 10
.Bold = True
.Italic = False
.Underline = wdUnderlineNone
.UnderlineColor = wdColorAutomatic
.StrikeThrough = False
.DoubleStrikeThrough = False
.Outline = False
.Emboss = False
.Shadow = False
.Hidden = False
.SmallCaps = False
.AllCaps = False
.Color = 8917266
.Engrave = False
.Superscript = False
.Subscript = False
.Spacing = 0
.Scaling = 100
.Position = 0
.Kerning = 0
.Animation = wdAnimationNone
.Ligatures = wdLigaturesNone
.NumberSpacing = wdNumberSpacingDefault
.NumberForm = wdNumberFormDefault
.StylisticSet = wdStylisticSetDefault
.ContextualAlternates = 0
End With
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.MoveLeft Unit:=wdWord, Count:=1
Selection.MoveLeft Unit:=wdWord, Count:=3, Extend:=wdExtend
Selection.Copy
Selection.MoveUp Unit:=wdLine, Count:=1
Selection.PasteAndFormat (wdFormatOriginalFormatting)
Selection.MoveLeft Unit:=wdWord, Count:=1
Selection.TypeBackspace
Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
Selection.Range.Case = wdLowerCase
Selection.MoveLeft Unit:=wdCharacter, Count:=1
Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend
Selection.Cut
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.MoveRight Unit:=wdWord, Count:=6, Extend:=wdExtend
With ActiveDocument.Bookmarks
End With
End Sub
Sub Ini2()
' ini2 Macro
'
'
Selection.Find.ClearFormatting
With Selection.Find
.Text = "*^p10L/"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.MoveLeft Unit:=wdCharacter, Count:=1
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.MoveDown Unit:=wdLine, Count:=2
Application.Run MacroName:="ini"
With ActiveDocument.Bookmarks
.Add Range:=Selection.Range, Name:="pnlp0177"
.DefaultSorting = wdSortByName
.ShowHidden = False
End With
End Sub
Alguien me puede dar alguna pista de cómo solucionarlo?
Un saludo a todos y gracias.
- Marcadores.rar(21,3 KB)
Valora esta pregunta


0