005 C# 自动生成工资条

279 阅读2分钟
C# 自动生成工资条

《喜欢你》影片中,顾胜男与路晋相杀相爱,顾胜男用一道道美食征服了路晋,最终走到了一起。

C# 自动生成工资条

她曾说过,每个人身上都有密码,看我这把钥匙能否解开你的密码。

Hey,How are you doing?

我是职场编码,很高兴认识你。

曾几何时,我觉得我和C#的关系,像极了顾胜男和路晋的坎坷情路。

结构严谨的C#,像极了毒舌的路晋,一有错误,就各种跳框叨叨我。

路晋为了品尝美食,一头扎进顾胜男家。

而我为了调试代码,一头埋进编码世界。

今天,我就给你演示一下C#自动生成工资条的实现过程。

001 准备工作

C# 自动生成工资条

  • Excel初始化

声明实例化Excel应用:

Excel._Application Eap = new Excel.Application();

设置Excel应用可见:
Eap.Visible=true;

设置Excel路径:
string ePth=AppDomain.CurrentDomain.BaseDirectory+"工资条.xls";

打开Excel文件:

Excel._Workbook Ebk = Eap.Workbooks.Open(ePth);

  • Word初始化
  • 声明实例化Word应用:

    Word._Application Wap = new Word.Application();

    设置Word应用可见:
    Wap.Visible=true;

    设置Word路径:
    string Pth=AppDomain.CurrentDomain.BaseDirectory+"工资条.doc";

    打开Word文件:
    Word._Document Wdc = Wap.Documents.Open(Pth);

    • 绘制表格,设置格式

    设置Word表格最大行为Excel有效行-1:

    int Mxr = Eap.Worksheets[1].UsedRange.CurrentRegion.Rows.Count-1;

    绘制表格:
    Wdc.Tables.Add(Wdc.Paragraphs[1].Range, Mxr*2,11);

    表格实例化、加线、文字居中:
    Word.Table Wtb = Wdc.Tables[1];
    Wtb.Borders.InsideLineStyle=
    Word.WdLineStyle.wdLineStyleSingle;

    Wtb.Borders.OutsideLineStyle=
    Word.WdLineStyle.wdLineStyleSingle;

    Wtb
    .Range.ParagraphFormat.Alignment
    =
    Word.WdParagraphAlignment.wdAlignParagraphCenter;

    002 开始工作

    C# 自动生成工资条

    通过s%2==1控制,利用Wtb.Cell(s,j).Range.Text=Eap.Worksheets[1].Cells(1,j).value实现标题写入奇数行。

    C# 自动生成工资条

    通过s=2,s+=2;i=2,i++控制,利用Eap.Worksheets[1].Cells(i,j).value.ToString()实现数据写入偶数行。

    其中,.ToString("yyyy-MM")实现日期格式化。

    其中,.ToString("0.00")实现数字格式化。

    003 扫尾工作

    C# 自动生成工资条

    利用Eapsht.Kill(Eap),调用Kill()方法,完成终结Excel进程。

    C# 自动生成工资条

    最后,贴一下代码,回复 源码,获得代码源文件。

    C# 自动生成工资条

    路晋说过,谢胜男,你长得不是最美的,也不是最丑的。

    不管是学习何种语言,真正适合自己的才是最好的。

    C# 自动生成工资条

    希望你每天也能像谈恋爱一样,即使有时不顺心,也要坚持生活下去。

    没准某一天,你也能够像路晋、谢胜男一样,因努力而拥抱美好未来!

    ———— The End ————