|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
Sub test()
If MsgBox("在 Word 中打开任意文档,再打开《MJ&FL》文档,再切换回刚才打开的任意文档。" & vbCr & "在任意文档中选定文字,应用此宏,文档《MJ&FL》将自动另存为在其自身所在文件夹中(可反复应用此宏)" & vbCr & "是否继续(如果当前文档是任意文档可以继续了)?", vbYesNo + vbCritical, "注意事项") = vbNo Then Exit Sub '如果选否则退出
If Documents.Count = 0 Then MsgBox "没有打开的文档!", vbOKOnly + vbCritical, "Save As": End
If Selection.Type = wdSelectionIP Then MsgBox "未选定文字!", vbOKOnly + vbCritical, "Save As": Exit Sub '如果未选定文字则退出
Dim myRange As Range '声明变量
Set myRange = Selection.Range '设置选定区域为 myRange 区域
myRange.Font.Color = wdColorRed '选定区域字体变为红色
myRange.Bold = True '选定区域字体加粗----------------完全是为了方便查看,这两句代码不加也可
myRange.Find.Execute FindText:=" ", replacewith:="", Replace:=wdReplaceAll '删除选定区域所有全角空格
myRange.Find.Execute FindText:="^w", replacewith:="", Replace:=wdReplaceAll '删除选定区域所有空白区域
If myRange.Characters.Last.Text = vbCr Then myRange.MoveEnd unit:=wdCharacter, Count:=-1 '如果选定内容最后字符为回车符则删除
Windows("MJ&FL").Activate '激活文档《》窗口
ActiveDocument.Tables(1).Cell(2, 1).Range.Text = myRange.Text '用选定区域的文本内容赋值给第1个表格第2行第1列单元格
ActiveDocument.Tables(1).Cell(2, 1).Range.Font.Size = 10 '设置第1个表格第2行第1列单元格字号大小为10磅
ActiveDocument.Tables(7).Cell(2, 1).Range.Text = myRange.Text '用选定区域的文本内容赋值给第7个表格第2行第1列单元格
ActiveDocument.Tables(7).Cell(2, 1).Range.Font.Size = 10 '设置第7个表格第2行第1列单元格字号大小为10磅
ActiveDocument.SaveAs FileName:=myRange.Text & ".doc" '用选定区域的文本内容作为文件名保存到与文档《MJ&FL》相同文件夹中
ActiveDocument.Close '关闭当前活动文档
Documents.Open ("MJ&FL") '打开文档《MJ&FL》
End Sub |
|