十一、上下左右移动光标位

private void moveLeft()

{

object moveUnit = Microsoft.Office.Interop.Word.WdUnits.wdWord;

object moveCount = 1;

object moveExtend = Microsoft.Office.Interop.Word.WdMovementType.wdExtend;

thisDocument.Application.Selection.MoveLeft(ref moveUnit, ref moveCount, ref MissingValue);

}

private void moveRight()

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

object dummy=System.Reflection.Missing.Value;

object count=1;

object Unit=Word.WdUnits.wdCharacter;

selection.MoveRight(ref Unit,ref count,ref dummy);

}

十二、取得当前光标位

public void GetCursor()

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);

object b=selection.get_Information(Word.WdInformation.wdFirstCharacterColumnNumber);

object c=selection.get_Information(Word.WdInformation.wdActiveEndAdjustedPageNumber);

MessageBox.Show(a.ToString()+”行,”+b.ToString()+”列,”+c.ToString()+”页”);

}

十三、定位到指定行或相对行

/// <summary>

/// 定位到指定行

/// </summary>

/// <param name=”lineNum”>行号</param>

private void gotoAbsolutLine(int lineNum)

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

object dummy=System.Reflection.Missing.Value;

object what=Word.WdGoToItem.wdGoToLine;

object which=Word.WdGoToDirection.wdGoToFirst;

object count=lineNum;

selection.GoTo(ref what,ref which,ref count,ref dummy);

}

/// <summary>

/// 定位到相对行,例如+4

/// </summary>

/// <param name=”lineNum”>行数</param>

private void gotoOppositeLine(int lineNum)

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

object dummy=System.Reflection.Missing.Value;

object what=Word.WdGoToItem.wdGoToLine;

object which;

if(lineNum<0)

which=Word.WdGoToDirection.wdGoToPrevious;

else

which=Word.WdGoToDirection.wdGoToNext;

object count=Math.Abs(lineNum);

selection.GoTo(ref what,ref which,ref count,ref dummy);

}

十四、定位到文档最后一行

private void gotoLastLine(Document thisDocument)

{

object dummy = System.Reflection.Missing.Value;

object what = WdGoToItem.wdGoToLine;

object which = WdGoToDirection.wdGoToLast;

object count = 99999999;

thisDocument.Application.Selection.GoTo(ref what, ref which, ref count, ref dummy);

}

十五、定位到第一个字符

private void gotoFirstCharacter()

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

int oldLine=0;

gotoAbsolutLine(1);

object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);//得到当前行号

while(oldLine!=int.Parse(a.ToString()))//一直按右键,直到光标不再往下了为止

{

oldLine++;

moveRight();

a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);

}

gotoAbsolutLine(int.Parse(a.ToString()));

}

十六、定位到最后一个字符

public void gotoLastCharacter()

{

if(selection==null||selection!=document.Application.Selection)

selection=document.Application.Selection;

gotoLastLine();

object dummy=System.Reflection.Missing.Value;

object count=99999999;

object Unit=Word.WdUnits.wdCharacter;

selection.MoveRight(ref Unit,ref count,ref dummy);

}

二十一、 取得行、列、页信息

public string WordGetRCP()

{

selection=document.Application.Selection;//wd.Selection;

object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);

object b=selection.get_Information(Word.WdInformation.wdFirstCharacterColumnNumber);

object c=selection.get_Information(Word.WdInformation.wdActiveEndAdjustedPageNumber);

return a.ToString()+”,”+b.ToString()+”,”+c.ToString();

}

C#操作word定位光标相关推荐

  1. 生成word文件痕迹列表,定位光标到痕迹所在页

    就目前公司开发过的几个项目中,都涉及到了文档的在线编辑处理,这个功能好实现,目前网上可以搜出不少在线编辑office的文件的控件和中间件,不管免费的还是收费的产品,公司也试用了不少,后来发现soaof ...

  2. java操作word(一)

    一. 需求背景 在做项目的过程中,经常会遇到要把数据库数据导出到Word文件中的需求,因为很多情况下,我们需要将数据导出到WORD中进行打印.此需求可以通过用程序填充数据到word模板中来实现.所谓模 ...

  3. .Net 操作Word

    使用.Net 操作Word 摘要:很多朋友在使用Office三大件做文档报告时,都会发现每天做的工作都是十分的繁琐和重复,要是有一款程序自动化生成word文档,那么是不是可以减轻我们的工作量,为公司节 ...

  4. VC++ 操作 word

    摘要: 使用VC编程来操纵Office.你可以实现诸如:Word文件打印.传送数据到Word文档.发送E-MAIL.自动产生表格.Excel数据统计.圆饼图,直方图显示.自动报表生成.播放幻灯.doc ...

  5. c++ 操作Word

    摘要: 使用VC编程来操纵Office.你可以实现诸如:Word文件打印.传送数据到Word文档.发送E-MAIL.自动产生表格.Excel数据统计.圆饼图,直方图显示.自动报表生成.播放幻灯.doc ...

  6. VC++ 操作Word

    摘要: 使用VC编程来操纵Office.你可以实现诸如:Word文件打印.传送数据到Word文档.发送E-MAIL.自动产生表格.Excel数据统计.圆饼图,直方图显示.自动报表生成.播放幻灯.doc ...

  7. C# 操作Word书签(二)——插入图片、表格到书签;读取、替换书签

    概要 书签的设置可以帮助我们快速的定位某段文字,使用起来很方便,也很节省时间.在前一篇文章"C# 如何添加/删除Word书签"中介绍了插入.删除书签的方法,本篇文章将对C# 操作W ...

  8. linux 光标切换快捷键,光标操作快捷键,光标快捷键

    光标操作快捷键,光标快捷键 这些光标操作快捷键适用mac/linux终端和chrome控制台,这些快捷键都是emacs的快捷键, 常用的快捷键: Ctrl + d        删除一个字符,相当于通 ...

  9. 报表技术2(百万数据导入导出,POI操作word)

    POI模板导出,操作word 导出用户详情数据(图片,公式处理) 使用模板导出用户详细信息 使用模板引擎 1.编写模板引擎 2.使用模板引擎 百万数据导出 代码实现: 百万数据导入 步骤分析: 1.自 ...

  10. java使用jacob操作word文档

    ava使用jacob操作word文档 java调用com组件操作word使用总结(jacob) 简单描述 在此处输入简单摘要 特别声明:使用java-com技术可以完成任何VBA可以完成的office ...

最新文章

  1. ili9341屏幕在断电一段时间后首次上电白屏问题
  2. 常用公差配合表图_涨知识!常用的机械测量工具,你都知道吗?
  3. 树形结构:优先级队列,堆
  4. 数据库增删改查代码,登录和注册
  5. C语言动态库libxxx.so的几种使用方法
  6. 类的应用python平均分_【数据科学系统学习】Python # 数据分析基本操作[四] 数据规整化和数据聚合与分组运算...
  7. 获取oracle自增长id,ibatis获取主键自动增长ID(Oracle/MSSQL/mysql),取得刚插入的ID编号...
  8. PS小技巧 | 怎么又下雨了
  9. 列车运行图的编制原则是什么_列车运行图编制规则
  10. linux计划任务没有运行,linux下定时任务不能执行
  11. 被果树点名做一个Blog游戏,答案如下...接下来换我点名了~~!!!
  12. 消防巡检控制器,消防泵巡检控制柜专用元件
  13. 80题题目+AC代码汇总 ~ 南阳 NYOJ
  14. 图像处理中关于矩的解释
  15. php获取后缀的文件名,php获取文件名及其后缀方法一览
  16. java谜题读书笔记_《java深度历险》读书笔记(一)
  17. OO2019助教工作总结
  18. 安装net_speeder
  19. 洛谷P1510 精卫填海(DP)
  20. HTML5 基本格式

热门文章

  1. 程序员的自我修养有哪些途径
  2. 带你走进程序员世界:资历深不是优势,资源才是难得的宝藏!
  3. 2018的趋势与展望(上)——记罗振宇“时间的朋友2017”跨年演讲
  4. java语法 chm_使用java代码打开chm格式的帮助文档
  5. 能不能把ASMR做成一门正经生意?
  6. sox 音频采样率转换
  7. php 逻辑思维题,倘若3分钟内,你能答对这道智力题,说明你的逻辑思维能力很强...
  8. Java+Springboot+Mybatis+Mysql+Bootstrap+Maven实现景区旅游管理系统
  9. 微信报餐小程序,食堂报餐统计,微信订餐小程序点餐公司订餐微信小程序源码开发
  10. element-ui中el-upload在ie10中无法上传相同图片的问题:XMLHttpRequest: 网络错误 0x2efd, 由于出现错误 00002efd 而导致此项操作无法完成。