当前位置: 首页 > 编程日记 > 正文

Word2010开发——操作文档

参考:

http://blog.csdn.net/akipeng/article/details/6534375

http://www.haogongju.net/art/19029

首先建立一个Word外接程序(Word AddIn)(家里的Vs竟然是中文版,汗!)

image

接着在项目中新增项,选择“功能区(可视化设计)”

image

这时候就给我的插件建立一个Ribbon的菜单。删掉自动生成的group1。然后新建一个tab,取名为“自动文档”。在这个tab里增加一个group“测试区”,然后加一个button,点击这个按钮,在word增加“hello word”。

image

关于word文档的操作,还是需要明确一些概念的。搜到这样一个文档。

http://files.cnblogs.com/timothyzhong/VSTO%E5%AE%9E%E6%88%98%E6%8A%80%E5%B7%A7.rar

Word 对象模型严格遵循用户界面。Application 对象表示整个应用程序,每个 Document 对象表示单个 Word 文档,Paragraph 对象对应于单个段,以此类推。这些对象各自都有很多方法和属性,您可以使用这些方法和属性操作对象或与对象交互。

要修改word中的内容,首先要获取一个range,然后修改这个range.text即可。

因此我在click事件里写了代码:

var reg = Globals.ThisAddIn.Application.Selection.Range;
if (reg != null) reg.Text = "Hello word!";

image

F5运行,每次点击按钮,就会在光标所在位置增加“Hello word!”两个字。

任务完成!

转载于:https://www.cnblogs.com/timothyzhong/archive/2012/06/10/2541129.html

相关文章:

【驱动】ubuntu安装内核头文件

1、检查是否已经安装 使用dpkg-query命令检查是否有可用的内核头文件。 $ dpkg-query -s linux-headers-$(uname -r) 如果输出显示install ok installed说明已经安装成功 Package: linux-headers-4.15.0-142-generic Status: install ok installed2、安装内核头文件 $ sudo…

嫌Terminal终端太单调?快收下这几个有趣的改造工具!

整理 | Rachel责编 | 琥珀出品 | AI科技大本营(ID:rgznai100)【导语】Terminal(终端)是程序员常用的工具之一,常用于系统的相关配置修改。系统自带的 terminal 较为简单,很多 Github 的开源项目都尝试对终端…

关于matlab向文件写入数据的方法——留着备用

MATLAB数据采集的时候,往往需要把得到的数据保存下来。 fid fopen(文件名,‘打开方式’); 说明:fid用于存储文件句柄值,如果fid>0,这说明文件打开成功。打开方式有如下选择: ‘r’&#xff…

js在页面滚动到一定位置时触发事件?

function getTop(e) {var offsete.offsetTop;if(e.offsetParent!null) //只要还有父元素,也就是当前元素不是根节点就继续往上累计元素的高度offsetgetTop(e.offsetParent);return offset; } var myBlockTop getTop(document.getElementById("homepageBanner")); va…

【C语言】学习笔记3——字符串

1. 字符串(charcacter string)是一个或多个字符的序列 2. C语言没有专门用于存储字符串的变量类型。字符串都被存储在char类型的数组种。 3. 数组由连续的存储单元组成,字符串种的字符被存储在相邻的存储单元中, 每个单元存储一个…

Facebook 的AI翻身之战!

作者 | Michael K. Spencer译者 | 王艳妮,责编 | 屠敏出品 | CSDN(ID:CSDNnews)Facebook最近举办了F8会议,这是了解这个平台未来发展的绝佳机会。 F8是Facebook的年度开发者大会——一个为期数日的活动,期间…

【Linux驱动】ThinkPad笔记本wifi模块rtl8821ce在ubuntu16.04的驱动(默认没有)

0、wifi模块型号 在win10下设备管理器中查看,型号为:Realtek 8821CE Wireless LAN 802.11ac PCI-E NIC 1、问题描述 在ThinkPad上安装win10ubuntu16.04双系统后,在win10下wifi可以正常使用,但是在ubuntu下没有wifi列表。 2、…

关于Linux的inode和dentry的一组文章

先mark一下,有时间再看。 http://www.ruanyifeng.com/blog/2011/12/inode.htmlhttp://teaching.idallen.com/dat2330/04f/notes/links_and_inodes.htmlhttp://www.thegeekstuff.com/2012/01/linux-inodes/http://blog.chinaunix.net/uid/7828352/frmd/-1.htmlhttp:/…

为什么Rust连续4年获“最受喜爱编程语言”?

作者 | Mike Tang责编 | Aholiab出品 | 区块链大本营(blockchain_camp)2015年5月15日,Rust编程语言核心团队正式宣布发布Rust 1.0版本。4年来,它优雅的解决高并发和高安全性系统问题的能力,受到了越来越多开发者的喜爱。并且连续4…

【Windows】清除win10开始菜单中失效打程序标签

1、问题描述 安装新版本Qt程序,卸载旧版本Qt后,在开始菜单中,还有残留,但是已经失效,需要删除这些失效的程序标签。 2、显示隐藏文件夹 打开此电脑——查看——勾选“隐藏项目”: 3、删除失效的程序标签…

解析equals(Object obj)和compareTo(T obj)

背景:最近在研究静态扫描的东西,遇到一个规则:"equals(Object obj)" should be overridden along with the "compareTo(T obj)" method 然后就想深度扒一扒equals和compareTo有什么区别 1.java.lang.Object是所有类的父类…

安装和部署Exchange Server 2007

为什么Exchange Server 2007使用服务器角色? 简化部署和管理 增强可扩展性 改进安全性 见下图:什么是邮箱服务器角色? 邮箱服务器角色: 存储用户邮箱和公共文件夹 通过群集, LCR, CCR实现高可用性 并不在邮箱之间转输邮件邮箱服务器: 不应该能从Internet直接访问 必须是活动…

AI时代,中国技术创新如何弯道超车?

2019 年 5 月 26 日 - 27 日,杭州国际博览中心,由工信部人才交流中心指导,CSDN 和数字经济人才发展中心主办的 CTA 核心技术及应用峰会圆满落下帷幕。本次大会聚焦机器学习、知识图谱等 AI 领域的热门技术,关注技术在行业中的实践…

【TX2】英伟达Nvidia TX2连接蓝牙设备

1、问题描述 买了一个蓝牙键盘(航世B.O.W 折叠键盘HB099,200大洋),尝试在连接TX2的蓝牙,试试好使不 2、安装蓝牙 Blueman 是一个适合在 GNOME 桌面环境使用的图形化蓝牙管理工具。 sudo apt-get install blueman b…

usermod

功能说明:用于修改系统已经存在的用户账号信息。 参数选项:-c comment 修改用户password文件中用户说明栏,同useradd -c功能。-d home_dir 修改用户每次登入时所使用的家目录,同useradd -d功能。-e expired_date 修改用户终止日期…

asp.net 获取当前时间的格式

在平时的编程中,经常会用到获取当前的系统时间,格式也很特定,今天就把一些格式整理了一下,贴出来,以便以后的使用。 //获取日期时间 DateTime.Now.ToString(); // 2008-9-4 20:02:10 DateTime.Now.ToLocalT…

史上最大规模ACL大会放榜,百度10篇NLP论文被录用!

近日,自然语言处理(NLP)领域的国际顶级学术会议“国际计算语言学协会年会”(ACL 2019)公布了今年大会论文录用结果。根据 ACL 2019 官方数据,今年大会的有效投稿数量达到 2694 篇,相比去年的 15…

【Ubuntu】安装Ubuntu+Win双系统后,每次开机默认是进入Ubuntu,如何设置成默认进入Win?

1、问题描述 安装UbuntuWin双系统后,每次开机默认是进入Ubuntu,如何设置成默认进入Win? 2、解决方法 1)记住开机选择中windows 10是第几个,从0开始记,如下图本人的是4 2)进入ubuntu系统&am…

MFC 多线程及线程同步

一、MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。  工作者线程没有消息机制,通常用来执行后台计算和维护任务&…

太火!这本AI图书微软强推,程序员靠它拿下50K!

如何能够短时间内抓住技术重点,集中突击?如何不在惧怕“算法”?如何才能在面试中对答如流,打造属于自己的“offer收割机”?也许这本书——《百面机器学习 算法工程师带你去面试》就能帮你实现!《百面机器学…

【Qt】错误处理:error: undefined reference to `qMain(int, char**)‘

1、问题描述 在一次编译Qt项目时,报错 H:\Qt\Qt5.14.2\5.14.2\mingw73_32\lib\libqtmain.a(qtmain_win.o):-1: In function `WinMain@16: C:\Users\qt\work\qt\qtbase\src\winmain\

Android WebView与ViewPager的滑动冲突分析

前言 如题所述,我使用的架构是ViewPagerFragmentWebView进行开发的,由于WebView的html页面代码是第三方的,这里不好放出来,所以只能放一个大致的架构图,如图所示,ViewPager包含了两个fragment,可以左右滑动…

关于outlook2010帐户设置

安装了office2010后,首次使用outlook,关于帐户设置,以qq邮件为例 开启imap服务2.打开outlook2010软件 由于有文字限制,其他的图解请链接http://wlinfang.blog.51cto.com/2961560/902193转载于:https://blog.51cto.com/wlinfang/90…

如何构建可解释的推荐系统?| 深度

作者 | gongyouliu来源 | 大数据与人工智能(ID:ai-big-data)推荐系统的目标是为用户推荐可能会感兴趣的标的物。通过算法推荐达到节省用户时间、提升用户满意度、为公司创造更多的商业价值的目的。要想达到这个目的就需要让用户信任你的推荐系…

【Qt】获取、比较Qt版本的宏和函数

1、版本号宏定义 版本号宏定义在QtCore\qconfig.h中,以Qt5.14.2为例 #define QT_VERSION_STR "5.14.2" #define QT_VERSION_MAJOR 5 #define QT_VERSION_MINOR 14 #

Spring Cloud企业微服务分布式云架构技术点整合

spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构...下面我针对于spring cloud微服务分布式云架构做了以下技术总结,希望可以帮助到大家:View: H5、Vue.js、Spring Tag、React、angular…

学习 JS navigator 对象

集合描述IEFOplugins[] 返回对文档中所有嵌入式对象的引用。 该集合是一个 Plugin 对象的数组,其中的元素代表浏览器已经安装的插件。Plug-in 对象提供的是有关插件的信息,其中包括它所支持的 MIME 类型的列表。 虽然 plugins[] 数组是由 IE 4 定义的&am…

【Ubuntu】解决ubuntu系统root用户下Chrome无法启动问题

1、问题描述 ubuntu系统在root用户下无法启动Chrome,报错: Running as root without --no-sandbox is not supported. See https://crbug.com/6381802、解决方法 如果是用命令行启动,启动时加上参数“–no-sandbox”即可; 如果…

程序媛眼中的程序猿原来是这样子的!

2019独角兽企业重金招聘Python工程师标准>>> 一直都想写一篇关于描述程序员的文章,但是一直没能开头,一来因为文笔不好,更主要的原因是貌似对程序员既熟悉又不熟悉,很怕写出来的是以偏概全,给大家造成对程序…

TinyMind人工智能社区5月热门技术文章排行榜TOP15

本文整理了TinyMind人工智能社区(https://www.tinymind.cn/)5月文章排行榜TOP15,欢迎大家阅读收藏。 1、谈谈Python那些不为人知的冷知识 https://www.tinymind.cn/articles/4158 此文章为系列文章,全集请看【Python冷知识】专辑 https://…