Sub 宏1()
'
' 宏1 宏
'
Documents.Open FileName:="D:\VBA\被插入文字的文件.docx", ConfirmConversions:=False, ReadOnly _
:=False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate _
:="", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="" _
, Format:=wdOpenFormatAuto, XMLTransform:=""
Selection.WholeStory
'
Documents.Open FileName:="D:\VBA\待插入到另一個文件中的文字文件.docx", ConfirmConversions:=False, ReadOnly _
:=False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate _
:="", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="" _
, Format:=wdOpenFormatAuto, XMLTransform:=""
'選中所有的文字
Selection.WholeStory
'回車符號
qhhc = Chr(13)
'把選中的文字賦值
ssstring_selection = Selection.Text
'設置默認數值爲1
ssstring_selection_n1 = 1
'下面是循環語句:do until ... loop,直到字符串的第一個字符爲回車符號。
'要求這樣的文章內,不出現單獨的回車符號空行才行。
Do Until ssstring_selection_n1 = 0
'算出字符串的長度
len11 = Len(ssstring_selection)
'用查找字符串函數instr,查找字符串中的第一個回車符號
ssstring_selection_n1 = InStr(ssstring_selection, qhhc)
'去除第一個回車符號(包括回車符)之前後,剩餘的字符串個數。
len12 = len11 - ssstring_selection_n1
'減去回車符號之後,左邊的字符個數
ssstring_selection_n1 = ssstring_selection_n1 - 1
'用left函數,取出左邊的字符串
temptext = Left(ssstring_selection, ssstring_selection_n1)
'只留下右邊的字符串。
ssstring_selection = Right(ssstring_selection, len12)
'如何temptext不等於空字符串,則
If temptext <> "" Then
Windows("被插入文字的文件.docx").Activate
ActiveDocument.Content.InsertAfter temptext
'把光標移動到文檔未尾,下一句爲進行回車。
Selection.EndKey Unit:=wdStory
Selection.TypeParagraph
End If
Loop
ActiveWindow.Close
End Sub
要求:Word2007 或者 Word2010下操作。