在WORD中用VBA实现光标移动与内容选择(转)

在WORD中如何用VBA宏语言选定一行、一段,删除一行、一段,移动光标至行首、行尾、段首、段尾等。请看以下内容。
Sub MoveToCurrentLineStart()
    '移动光标至当前行首
    Selection.HomeKey unit:=wdLine
End Sub
Sub MoveToCurrentLineEnd()
    '移动光标至当前行尾
    Selection.EndKey unit:=wdLine
End Sub
Sub SelectToCurrentLineStart()
    '选择从光标至当前行首的内容
    Selection.HomeKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub SelectToCurrentLineEnd()
    '选择从光标至当前行尾的内容
    Selection.EndKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub SelectCurrentLine()
    '选择当前行
    Selection.HomeKey unit:=wdLine
    Selection.EndKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub MoveToDocStart()
    '移动光标至文档开始
    Selection.HomeKey unit:=wdStory
End Sub
Sub MoveToDocEnd()
    '移动光标至文档结尾
    Selection.EndKey unit:=wdStory
End Sub
Sub SelectToDocStart()
    '选择从光标至文档开始的内容
    Selection.HomeKey unit:=wdStory, Extend:=wdExtend
End Sub
Sub SelectToDocEnd()
    '选择从光标至文档结尾的内容
    Selection.EndKey unit:=wdStory, Extend:=wdExtend
End Sub
Sub SelectDocAll()
    '选择文档全部内容(从WholeStory可猜出Story应是当前文档的意思)
    Selection.WholeStory
End Sub
Sub MoveToCurrentParagraphStart()
    '移动光标至当前段落的开始
    Selection.MoveUp unit:=wdParagraph
End Sub
Sub MoveToCurrentParagraphEnd()
    '移动光标至当前段落的结尾
    Selection.MoveDown unit:=wdParagraph
End Sub
Sub SelectToCurrentParagraphStart()
    '选择从光标至当前段落开始的内容
    Selection.MoveUp unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub SelectToCurrentParagraphEnd()
    '选择从光标至当前段落结尾的内容
    Selection.MoveDown unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub SelectCurrentParagraph()
    '选择光标所在段落的内容
    Selection.MoveUp unit:=wdParagraph
    Selection.MoveDown unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub DisplaySelectionStartAndEnd()
    '显示选择区的开始与结束的位置,注意:文档第1个字符的位置是0
    MsgBox ("第" & Selection.Start & "个字符至第" & Selection.End & "个字符")
End Sub
Sub DeleteCurrentLine()
    '删除当前行
    Selection.HomeKey unit:=wdLine
    Selection.EndKey unit:=wdLine, Extend:=wdExtend
    Selection.Delete
End Sub
Sub DeleteCurrentParagraph()
    '删除当前段落
    Selection.MoveUp unit:=wdParagraph
    Selection.MoveDown unit:=wdParagraph, Extend:=wdExtend
    Selection.Delete
End Sub
  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用 VBA 从 Excel 中导入表格到 Word 文档中。以下是一个示例代码: ```vba Sub ImportTableFromExcel() Dim excelApp As Object ' Excel.Application Dim excelWorkbook As Object ' Excel.Workbook Dim excelWorksheet As Object ' Excel.Worksheet Dim wordApp As Object ' Word.Application Dim wordDoc As Object ' Word.Document ' 创建一个新的 Excel 应用程序和工作簿 Set excelApp = CreateObject("Excel.Application") excelApp.Visible = False ' 设置为 True 可见,False 不可见 Set excelWorkbook = excelApp.Workbooks.Open("C:\路径\至\Excel文件.xlsx") ' 打开要导入的工作表 Set excelWorksheet = excelWorkbook.Worksheets("Sheet1") ' 复制工作表中的表格范围 excelWorksheet.UsedRange.Copy ' 创建一个新的 Word 应用程序和文档 Set wordApp = CreateObject("Word.Application") wordApp.Visible = True Set wordDoc = wordApp.Documents.Add ' 在 Word 文档中粘贴表格 wordDoc.Range.PasteExcelTable LinkedToExcel:=False, _ WordFormatting:=False, RTF:=False ' 清除剪贴板内容 Application.CutCopyMode = False ' 关闭并保存 Excel 工作簿 excelWorkbook.Close SaveChanges:=False ' 退出 Excel 应用程序 excelApp.Quit ' 释放对象 Set excelWorksheet = Nothing Set excelWorkbook = Nothing Set excelApp = Nothing Set wordDoc = Nothing Set wordApp = Nothing End Sub ``` 请将代码中的 "C:\路径\至\Excel文件.xlsx" 替换为您要导入的 Excel 文件的实际路径。您可以根据需要更改工作表名称。 此代码将打开指定的 Excel 文件,复制工作表中的表格范围。然后,它创建一个新的 Word 应用程序和文档,并将表格粘贴到 Word 文档中。最后,它关闭并保存 Excel 工作簿,退出 Excel 应用程序,并释放对象。 希望对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值