ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 11657|回复: 16

[求助] 在WORD中用VBA实现光标移动与内容选择

[复制链接]

TA的精华主题

TA的得分主题

发表于 2007-3-1 23:50 | 显示全部楼层 |阅读模式
=========================================
作者:howwa@sina.com
时间:2007-3-1
=========================================
 
在WORD中如何用VBA宏语言选定一行、一段,删除一行、一段,移动光标至行首、行尾、段首、段尾等。请看以下内容。
QUOTE:

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

[此贴子已经被作者于2007-3-1 23:55:45编辑过]

TA的精华主题

TA的得分主题

发表于 2007-3-2 00:38 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-3-2 09:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

谢谢分享。有的可以简化,例如:

Sub SelectCurrentParagraph1()
    '选择光标所在段落的内容
    Selection.Paragraphs(1).Range.Select
End Sub
Sub DeleteCurrentParagraph1()
    '删除当前段落
    Selection.Paragraphs(1).Range.Delete
End Sub

TA的精华主题

TA的得分主题

发表于 2007-3-2 11:23 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-6-14 22:12 | 显示全部楼层
选择第一行及第二行   和   选择第一段及第二段    的代码怎样写?

或者说从第一行首移到第二行尾     和     或者说从第一段首移到第二段尾   的代码

[ 本帖最后由 szqhb 于 2010-6-14 22:13 编辑 ]

TA的精华主题

TA的得分主题

发表于 2012-9-3 15:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习了,收藏看看

TA的精华主题

TA的得分主题

发表于 2013-1-16 11:53 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
每次回帖、谢谢!

TA的精华主题

TA的得分主题

发表于 2013-1-18 15:14 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-11-30 14:09 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
如果要移动到下一行呢?
例如要从A1移动到A2
又或者从A1移动到B1?

TA的精华主题

TA的得分主题

发表于 2013-12-1 15:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
这个有用啊!
  省了我的寻找,谢谢!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-25 08:51 , Processed in 0.045865 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表