我有一百个单词文件一次只能工作一个,每个单词都有这样一行(不在同一个相对位置):
PROC。 n°0032545-15.2012.8.19.0053
我需要一个只复制序列号的代码,在本例中为0032545-15.2012.8.19.0053
,然后我可以用它来粘贴。它不需要压制点。
我试过的代码复制了整行,但我只能从前面的零复制
之后,我需要光标转到文件的特定部分(在这种情况下,12.12.13
一行,但它不会!这是我到目前为止所尝试的:
Sub Macrovolta2()
With Selection.Find
.Text = "Proc. nº "
.Execute Forward:=True
Selection.MoveRight Unit:=wdCharacter, Count:=25, Extend:=wdExtend
Selection.Copy
End With
With Selection.Find
.ClearFormatting
.Text = "12.12.13"
.Execute Forward:=True
Selection.MoveUp Unit:=wdLine, Count:=1
End With
End Sub
答案 0 :(得分:0)
录制你的宏。 Atl T,M,R。
您可能会发现F8功能很有用。按F8和要选择的字符。
所以搜索Proc,按向右箭头键到数字的开头,然后F8和空格将选择到下一个空格(假设数字后面有一个),然后按Shift +向左箭头缩小选择,使得尾随空间没有被选中。
另一种方法是搜索数字,如果它是一致的格式。
^#^#^#^#^#^#^#-^#^#.^#^#^#^#.^#.^#^#.^#^#^#^#
^#表示任何数字。以上是您的号码。
Word的搜索选项使用通配符可以打开正则表达式。您可以搜索并拉出子串。
Proc. nº ([0-9]{7}-[0-9]{2}.[0-9]{4}.[0-9].[0-9]{2}.[0-9]{4})
只访问数字使用\ 1(指代括号()中的第一项)。 [0-9]表示任何数字。 {4}表示前一个字符中的4个。