006 C# 自動生成信息卡

Hey,How are you doing?工具

2020年,對於我來講,既是機遇,也是挑戰。學習

所謂挑戰,是指C#實現辦公自動化的系統課程幾乎空白。編碼

所謂機遇,是指作好了有可能成爲C#辦公自動化第一人。人工智能

C# 自動生成信息卡

我不是專業碼農,沒有太多項目經驗。spa

慶幸的是,平常辦公中接觸到了不少高度重複的工做。操作系統

個人目的很明確,就是想經過C#實現重複工做自動化。3d

也許骨子裏和不少人不一樣,我並無追Python的風。對象

C# 自動生成信息卡

C/C++,大佬們一般用於操做系統、硬件底層等領域。blog

而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# 自動生成信息卡

根據操做示意圖,咱們能夠得知,只要把Excel數據寫入Word模板裏就能夠了。

首先,我會在Word裏創建一張信息卡模板,放在文件夾~c003\bin\Debug\。

接着,我用Sharp Develop建立一個控制檯應用程序。

大體思路:觀察一下,Excel共有10條數據準備寫入,

那我就把Word模板複製9份,接着使用代碼循環寫入就能夠了。

001 準備工做

C# 自動生成信息卡

平常引用Word\Excel, System.Runtime.InteropServices殺進程專用空間。

002 開始工做

C# 自動生成信息卡

  • 常規操做:聲明、可見、定義、打開Word\Excle。
  • 建立表格: 經過Mxr-2控制循環次數, Wdc.Tables.Count計算表格個數。
  • 數據寫入: 經過Wdc.Tables[].Cell().Range.Text=Eap.Worksheets[].Cells().value.ToString()實現數據寫入。

003 掃尾工做

C# 自動生成信息卡

經過定義Kill方法,調用Kill方法實現Excel進程終結。

下面是源碼貼圖,若是你也想深刻學習,回覆 源碼 得到源代碼供你參考。

C# 自動生成信息卡

———— The End ————

相關文章
相關標籤/搜索