Sub queryDate() <br /><br /><br /> '得到当前年 <br /> Dim curYear As String <br /> curYear = Year(Now) <br /><br />'需要将当前年转换成中文汉字的年 <br /> Dim convertYear As String <br /> If curYear = "2008" Then <br /> convertYear = "二○○八" <br /> ElseIf curYear = "2008" Then <br /> convertYear = "二○○九" <br /> End If <br /> <br /> '接收到文档里的年 <br /> Dim receYear As String <br /><br /><br /> Selection.Find.ClearFormatting <br /> With Selection.Find <br /> .Text = "落款" + Chr(13) <br /> .Replacement.Text = "" <br /> .Forward = True <br /> .Wrap = wdFindContinue <br /> .Format = False <br /> .MatchCase = False <br /> .MatchWholeWord = False <br /> .MatchByte = True <br /> .MatchWildcards = False <br /> .MatchSoundsLike = False <br /> .MatchAllWordForms = False <br /> End With <br /> If Selection.Find.Execute = True Then <br /> Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=2, Name:="" <br /> Selection.MoveRight Unit:=wdCharacter, Count:=4, Extend:=wdExtend <br /> receYear = Selection.Text <br /> If receYear <> convertYear Then <br /> Selection.Comments.Add Range:=Selection.Range <br /> Selection.TypeText Text:="中文年份不对" <br /> End If <br /> End If <br /> <br /> <br /> Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:="1" <br /> Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:="1" <br /> <br /> Application.WindowState = wdWindowStateNormal <br /> Selection.Find.ClearFormatting <br /> With Selection.Find <br /> .Text = "document over" + Chr(13) <br /> .Replacement.Text = "" <br /> .Forward = True <br /> .Wrap = wdFindContinue <br /> .Format = False <br /> .MatchCase = False <br /> .MatchWholeWord = False <br /> .MatchByte = True <br /> .MatchWildcards = False <br /> .MatchSoundsLike = False <br /> .MatchAllWordForms = False <br /> End With <br /> <br /> If Selection.Find.Execute = True Then <br /> <br /> Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" <br /> Selection.EndKey Unit:=wdLine <br /> Selection.MoveLeft Unit:=wdCharacter, Count:=4, Extend:=wdExtend <br /> receYear = Selection.Text <br /> <br /> If curYear <> receYear Then <br /> Selection.Comments.Add Range:=Selection.Range <----执行到这句话报错,word自动关闭 Selection.TypeText Text:="英文年份不对" <br /> End If <br /> End If <br />End Sub <br />当执行到上边<--时,word就会自动关闭,不知道为什么。第一次查询“落款”时,也有这句话,为什么在第二次查询“document over”时,同样的一句话,执行到这时,word就自动关闭了。为什么啊。应当怎样改啊。