丁祥欢
图解用SPIRE.XLS 写Excel文件
2022-6-23 18:16
阅读:4618

图解用SPIRE.XLS 写Excel文件

这几天在写一个生成Excel表单的程序,初步接触到了免费的SPIRE.XLS组件,发现比较容易上手,生成文件不用安装Excel或启动Excel,使用自己的引擎来读写文件。免费版可以处理100行之内的数据或一个文件内工作表不超过5个即可。使用下来感觉容易上手,速度很快,效果也比较理想,于是总结了一下,算是给自己备忘:

1.安装好之后,要引用这个库。安装可以用Visual Studio 2022 community里的Nuget包管理器来安装。

使用SPIRE.XLS库.png

  1. 操作Excel的最常见动作,就是给单元格写文本、写数值、写公式,设置单元格的字体,设置单元格中部分文本的字体等。

    这个写表单的函数,重点在写单元格的文本,以及公式的设置。

    填写工作表.png


    单元格(Range对象)是重点的对象,Spire.xls提供了Range.Style.Font对象可以设置,比较方便。比如下面通过Style.Font.Color来设置单元格的字体颜色。注意使用Color对象要引用System.Drawing库,见最上面的图片。

    设置单元格的数字格式.png

    我们知道,Excel的单元格内,即使是一串文本,也可以分别是不同的字符设置不同的字体、颜色、大小等特征,因此是一种富文本格式的文本串。要提供这种精细的控制,方法上稍有不同。以下示例来自官网:

    创建字体对象.png

    单元格部分文本的字体设置.png


    SetFont的第1,2个参数对应文本串内,待设置的字符串其始末位置, 0表示第一个字符,29表示第30个字体,对1~30个字符使用 font1规定的风格,  第三个参数是设置的字体对象。

    设置单元格的文本与字体,与设置文本框的是类似的。以下是打印标签的函数,标签的信息多放在文本框内,因此设置文本框的代码多。(稍有不同的是,文本框的RichText对象要新建,单元格的则只需要通过等号进行隐式转换)。

    填写标签.png


    再简单提一下,向单元格内写入数值,应访问Range.NumberValue;设置数值的格式,应访问Range.NumberFormat。

    向Range写入数字与格式控制.png

    具体的NumberFormat,可以参考Excel中单元格的自定义格式,或者学习官网上的示例。


    官方网站上有比较详细的说明,地址:https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Document-Operation/How-to-set-the-font-and-background-for-TextBox-in-Excel-Chart.html,不过是 英文的。


转载本文请联系原作者获取授权,同时请注明本文来自丁祥欢科学网博客。

链接地址:https://wap.sciencenet.cn/blog-1213210-1344224.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?