前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >006 C# 自动生成信息卡

006 C# 自动生成信息卡

原创
作者头像
职场编码
修改2020-06-01 10:17:31
1.9K0
修改2020-06-01 10:17:31
举报
文章被收录于专栏:Ruby办公自动化Ruby办公自动化

Hey,How are you doing?

2020年,对于我来说,既是机遇,也是挑战。

所谓挑战,是指C#实现办公自动化的系统课程几乎空白。

所谓机遇,是指做好了有可能成为C#办公自动化第一人。

C# 自动生成信息卡
C# 自动生成信息卡

我不是专业码农,没有太多项目经验。

庆幸的是,日常办公中接触到了很多高度重复的工作。

我的目的很明确,就是想通过C#实现重复工作自动化。

也许骨子里和很多人不同,我并没有追Python的风。

C# 自动生成信息卡
C# 自动生成信息卡

C/C++,大佬们通常用于操作系统、硬件底层等领域。

而Python主攻人工智能。

由于VBA存在,Python并不是最适合办公自动化的工具。

1995年Java诞生,2002年C#诞生,

Java和C#同属C系语言,但C#比Java简洁易学。

如果你是想找工作,你可以学习Java。

咱们目的是实现重复工作自动化,

使用C#则可以实现更早下班。

我并不是特别厉害,曾研究过2个月VBA没有继续深造。

略懂一些基础语法,我感觉这样,其实就已经足够了。

通过短暂学习,我知道VBA是通过COM组件实现办公自动化。

其实,我也可以通过COM组件,用C#实现办公自动化。

就是抱着这样一种纯碎想法,我开了新坑[职场编码],

致力于贡献一些职场小白实现效率提升的小技巧。

说句实在话,我学了2个月VBA,就已经对Sub+End Sub,

With+End With产生依赖了。

VBA实在太好用了,那时根本瞧不上C#。

2020年1月下旬,在家憋着没事,就开始研究C#,从基础语法,看到最新特性,

经过将近4个月的磨合,我发现,

自己竟然喜欢上了优雅的{花括号}和[索引]。

前者可以快速区分代码块,而不必使用游标卡尺为缩进而烦恼。

后者可以快速引用对象,而不必与对象的(方法)混为一谈。

前面,我所说的COM组件是指:

  • Microsoft.Office.Interop.Word;
  • Microsoft.Office.Interop.Excel;
  • Microsoft.Office.Interop.Powerpoint;

当然还有其他的组件,如Access、Publisher、Visio等。

因为日常接触到的基本就是办公三大件。

今后粉丝有需求,我会再开专题,详细讲解其他组件。

我们是技术文,排版其实不是最重要的。

通常推文以技术为主,若哪里看不懂,

或者我写得不够明确,欢迎私信联系。

下面,我们来看一下如何自动生成信息卡。

C# 自动生成信息卡
C# 自动生成信息卡

根据操作示意图,我们可以得知,只要把Excel数据写入Word模板里就可以了。

首先,我会在Word里建立一张信息卡模板,放在文件夹~c003\bin\Debug\。

接着,我用Sharp Develop创建一个控制台应用程序。

大致思路:观察一下,Excel共有10条数据准备写入,

那我就把Word模板复制9份,接着使用代码循环写入就可以了。

001 准备工作

C# 自动生成信息卡
C# 自动生成信息卡

日常引用Word\Excel, System.Runtime.InteropServices杀进程专用空间。

002 开始工作

C# 自动生成信息卡
C# 自动生成信息卡
  • 常规操作:声明、可见、定义、打开Word\Excle。
  • 创建表格: 通过Mxr-2控制循环次数, Wdc.Tables.Count计算表格个数。
  • 数据写入: 通过Wdc.Tables[].Cell().Range.Text=Eap.Worksheets[].Cells().value.ToString()实现数据写入。

003 扫尾工作

C# 自动生成信息卡
C# 自动生成信息卡

通过定义Kill方法,调用Kill方法实现Excel进程终结。

下面是源码贴图,如果你也想深入学习,回复 源码 获得源代码供你参考。

C# 自动生成信息卡
C# 自动生成信息卡

———— The End ————

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 001 准备工作
  • 002 开始工作
  • 003 扫尾工作
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档