Spire.Office for Java 9.6.0 已发布。在该版本中,Spire.Doc for Java 支持在 Word 转换过程中找不到相应字体时,给出提示消息;Spire.Barcode for Java 支持获取条码信息;Spire.PDF for Java 增强了 PDF 到 SVG、Word、OFD 和图片的转换功能。此外,大量已知问题在该版本中成功修复。详情请阅读以下内容。
获取 Spire.Office for Java 9.6.0 请点击:https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html
新功能:
Document doc = ConvertUtil.GetNewEngineDocument();
doc.loadFromFile(input);
HandleDocumentSubstitutionWarnings substitutionWarningHandler = new HandleDocumentSubstitutionWarnings();
doc.setWarningCallback(substitutionWarningHandler);
doc.saveToFile(output_1);
StringBuilder sb = new StringBuilder();
Iterator iterator = substitutionWarningHandler.FontWarnings.iterator();
while(iterator.hasNext()){
System.out.println(((WarningInfo)iterator.next()).getDescription());
}
String s = substitutionWarningHandler.FontWarnings.get(0).getDescription();
WarningSource warningSource = substitutionWarningHandler.FontWarnings.get(0).getSource();
substitutionWarningHandler.FontWarnings.clear();
class HandleDocumentSubstitutionWarnings implements IWarningCallback
{
public void warning(WarningInfo info) {
if(info.getWarningType() == WarningType.Font_Substitution)
FontWarnings.warning(info);
}
public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}问题修复:
新功能:
BarcodeInfo[] infos = BarcodeScanner.scanInfo("barcode.png");
Point[] loaction = infos[0].getVertexes();
BarCodeReadType barCodeReadType = infos[0].getReadType();
String dataString = infos[0].getDataString();String[] s = BarcodeScanner.scan("AZTEC.png",BarCodeType.Aztec);Public static String[] scan(BufferedImage bitmap, java.awt.Rectangle rect, BarCodeType barcodeType, boolean IncludeCheckSum)
Public static String[] scan(String fileName, BarCodeType barcodeType, boolean IncludeCheckSum)
Public static String scanOne(String fileName, BarCodeType barcodeType, boolean IncludeCheckSum)
Public static String scanOne(InputStream stream, BarCodeType barcodeType, boolean IncludeCheckSum)com.spire.barcode.publics.drawing.FontStyle
com.spire.barcode.publics.drawing.GraphicsUnit
com.spire.barcode.publics.drawing.StringAlignmentpublic java.awt.Font getTopTextFont()
public java.awt.Font getBottomTextFont()
public java.awt.Font getTextFont()public void setBottomTextFont(java.awt.Font value)->public void setBottomTextFont(String familyName, float fontSize)
public void setTopTextFont(java.awt.Font value)->public void setTopTextFont(String familyName, float fontSize)
public boolean showBottomText->public boolean isShowBottomText()
public void setShowBottomText(boolean value) -> public void isShowBottomText(boolean value)
public com.spire.barcode.GraphicsUnit getUnit() -> public com.spire.barcode.publics.drawing.GraphicsUnit getUnit()
public void setUnit(com.spire.barcode.GraphicsUnit value) -> public void setUnit(com.spire.barcode.publics.drawing.GraphicsUnit value)
public void setTextFont(java.awt.Font value) -> public void setTextFont(String familyName, float fontSize)
public float getLeftMargin() ->The default value adjusted from 5 to 4. public float getTopTextMargin()
public void setTopTextMargin(float value)
public int getAztecErrorCorrection()
public void setAztecErrorCorrection(int value)
public int getAztecLayers()
public void setAztecLayers(int value)
public DataMatrixSymbolShape getDataMatrixSymbolShape()
public void setDataMatrixSymbolShape(DataMatrixSymbolShape value)
public ITF14BorderType getITF14BearerBars()
public void setITF14BearerBars(ITF14BorderType value)
public void setTextFont(String familyName, float fontSize, com.spire.barcode.publics.drawing.FontStyle style)
public boolean isShowStartCharAndStopChar()
public void isShowStartCharAndStopChar(boolean value)public java.awt.Font getTextFont()
public java.awt.Font getTopTextFont()
public java.awt.Font getBottomTextFont()public void setTextFont(java.awt.Font value) -> public void setTextFont(String familyName, float sizePoints)
public com.spire.barcode.GraphicsUnit getUnit() -> public com.spire.barcode.publics.drawing.GraphicsUnit getUnit()
public void setUnit(com.spire.barcode.GraphicsUnit value) -> public void setUnit(com.spire.barcode.publics.drawing.GraphicsUnit value)
public com.spire.barcode.StringAlignment getTextAlignment() -> public com.spire.barcode.publics.drawing.StringAlignment getTextAlignment()
public void setTextAlignment(com.spire.barcode.StringAlignment value) -> public void setTextAlignment(com.spire.barcode.publics.drawing.StringAlignment value)
public com.spire.barcode.StringAlignment getTopTextAligment() -> public com.spire.barcode.publics.drawing.StringAlignment getTopTextAligment()
public void setTopTextAligment(com.spire.barcode.StringAlignment value) -> public void setTopTextAligment(com.spire.barcode.publics.drawing.StringAlignment value)
public void setBottomTextFont(java.awt.Font value) -> public void setBottomTextFont(String familyName, float fontSize)
public void setTopTextFont(java.awt.Font value) -> public void setTopTextFont(String familyName, float fontSize)
public boolean showBottomText->public boolean isShowBottomText()
public void setShowBottomText(boolean value) -> public void isShowBottomText(boolean value)
public com.spire.barcode.StringAlignment getBottomTextAlignment() -> public com.spire.barcode.publics.drawing.StringAlignment getBottomTextAlignment()
public void setBottomTextAlignment(com.spire.barcode.StringAlignment value) -> public void setBottomTextAlignment(com.spire.barcode.publics.drawing.StringAlignment value)
public float getLeftMargin() ->The default value adjusted from 5 to 4. public float getTopTextMargin()
public void setTopTextMargin(float value)
public void setTextFont(String familyName, float sizePoints, com.spire.barcode.publics.drawing.FontStyle style)
public void setTopTextFont(String familyName, float fontSize, com.spire.barcode.publics.drawing.FontStyle style)
public void setITF14BearerBars(ITF14BorderType value)
public boolean isShowStartCharAndStopChar()
public void isShowStartCharAndStopChar(boolean value)
public int getAztecLayers()
public void setAztecLayers(int value)
public int getAztecErrorCorrection()
public void setAztecErrorCorrection(int value)
public DataMatrixSymbolShape getDataMatrixSymbolShape()
public void setDataMatrixSymbolShape(DataMatrixSymbolShape value)
public void setBottomTextFont(String familyName, float fontSize, com.spire.barcode.publics.drawing.FontStyle style)问题修复:
问题修复:
问题修复:
Spire.Doc for Python 12.6.0 现已正式发布。该版本支持加载、保存、转换 Markdown 文档,例如 Word 转 Markdown,或 Markdown 转 Word/PDF。此外,还修复了一些在转换 Word 到 PDF 和 Html 到 Word 时遇到的问题。详情请查阅以下内容。
新功能:
document= Document()
#load .md file
document.LoadFromFile("input.md")
#save to .md file
document.SaveToFile("output.md", FileFormat.Markdown)
#save to .docx file
document.SaveToFile("output.docx", FileFormat.Docx)
#save to .doc file
document.SaveToFile("output.doc", FileFormat.Doc)
#save to .pdf file
document.SaveToFile("output.pdf", FileFormat.PDF)
document= Document()
#load .docx file
document.LoadFromFile("input.docx")
#load .doc file
#document.LoadFromFile("input.doc")
#save to .md file
document.SaveToFile("output.md", FileFormat.Markdown)问题修复:
在处理大量 Excel 数据时,有时候我们需要用到“排序”功能以便快速组织数据。通过按升序、降序或自定义顺序排列数据,用户可以轻松发现趋势走向、分析关系并提取有价值的信息。本文将介绍如何使用 Spire.XLS for Python 在 Python 中对 Excel 中的数据进行排序。
此教程需要 Spire.XLS for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.XLS
如果您不确定如何安装,请参考: 如何在 Windows 中安装 Spire.XLS for Python
Spire.XLS for Python 提供的 Workbook.DataSorter.SortColumns.Add(key: int, sortComparsionType: SortComparsionType, orderBy: OrderBy) 方法允许用户根据不同的条件对数据进行排序。例如,可以按升序、降序或其他顺序对单元格值、单元格颜色或字体颜色进行排序。
以下是对指定列中的数值进行排序的步骤:
from spire.xls.common import *
from spire.xls import *
# 创建Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("产品.xlsx")
# 获取第一张工作表
worksheet = workbook.Worksheets[0]
# 对指定列中的数值按升序排序
workbook.DataSorter.SortColumns.Add(0, SortComparsionType.Values, OrderBy.Ascending)
# 在指定的单元格区域内排序
workbook.DataSorter.Sort(worksheet["A1:E6"])
# 保存结果文件
workbook.SaveToFile("列排序.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

您还可以创建自定义列表,然后使用 Workbook.DataSorter.SortColumns.Add(key: int, customSortOrder: List[str]) 方法根据该列表对数据进行排序。
以下是使用自定义列表对数据进行排序的步骤:
from spire.xls.common import *
from spire.xls import *
# 创建Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("产品.xlsx")
# 获取第一张工作表
worksheet = workbook.Worksheets[0]
# 创建自定义排序列表
customList = ["肉类", "酒类", "水果", "零食", "饮料"]
# 使用自定义列表对指定列排序
workbook.DataSorter.SortColumns.Add(4, customList )
# 在指定的单元格区域内排序
workbook.DataSorter.Sort(worksheet["A1:E6"])
# 保存结果文件
workbook.SaveToFile("自定义排序.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

要在 Excel 中对指定行排序,需要将排序方向设置为从左向右(LeftToRight),指定排序模式并在指定行中相应地进行排序。
以下是对指定行中的数值进行排序的步骤:
from spire.xls.common import *
from spire.xls import *
# 创建Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("数据.xlsx")
# 获取第一张工作表
worksheet = workbook.Worksheets[0]
# 设置排序时是否包含标题
workbook.DataSorter.IsIncludeTitle = True
# 设置排序方向
workbook.DataSorter.Orientation = SortOrientationType.LeftToRight
# 指定排序规则
workbook.DataSorter.SortColumns.Add(0,SortComparsionType.Values,OrderBy.Descending)
# 对第一行中的数据进行排序
workbook.DataSorter.Sort(worksheet.Rows[0])
# 保存结果文件
workbook.SaveToFile("行排序.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.PDF 10.6.25 已发布。本次更新增强了 PDF 到 OFD 和 PDFA1A,以及 XPS 到 PDF 的转换功能。此外,一些已知问题也在该版本中成功修复,如签名验证不正确的问题。详情请阅读以下内容。
问题修复:
Spire.XLS 14.6.6 现已发布。该版本支持转换 Excel 到 Markdown 格式,并成功修复了一些在转换 Excel 到图片、HTML,以及在透视表中添加筛选器时出现的问题。新功能及问题修复详情如下。
新功能:
Workbook workbook = new Workbook();
workbook.LoadFromFile("input.xlsx");
workbook.SaveToFile("output.md",FileFormat.Markdown);问题修复:
为 Excel 工作表中的单元格设置数字格式对于数据管理和展示非常重要,可以增强数据可读性、确保内容一致性并帮助进行准确的数据分析。恰当的数字格式使用户能够区分不同类型的数值数据,如货币、百分比、日期和科学计数法等,使复杂的数据集一目了然。在本文中,我们将探讨如何使用 Spire.XLS for Python 通过 Python 程序中设置 Excel 单元格的数字格式,实现自动化的 Excel 文档创建与管理。
此教程需要 Spire.XLS for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.XLS
如果您不确定如何安装,请参考: 如何在 Windows 中安装 Spire.XLS for Python
在 Excel 工作簿中,单元格的数字格式由其格式代码决定。开发者可以利用各种符号在格式代码中定义数字数据、日期和时间、货币等的显示方式。以下是数字格式代码中一些常用的符号:
Spire.XLS for Python 提供了 CellRange.NumberValue 属性来设置单元格的数值,以及 CellRange.NumberFormat 属性来使用格式代码设置单元格的数字格式。以下是使用 Python 设置 Excel 单元格数字格式的操作步骤:
from spire.xls import *
from spire.xls.common import *
# 创建Workbook实例
workbook = Workbook()
# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)
# 设置标题行
sheet.Range["B9"].Text = "数字格式"
sheet.Range["C9"].Text = "数值"
sheet.Range["D9"].Text = "显示"
# 设置带千位分隔符和两位小数的数字
sheet.Range["B10"].Text = "带千位分隔符和两位小数的数字"
sheet.Range["C10"].Text = "-1234123.5678"
sheet.Range["D10"].NumberValue = -1234123.5678
sheet.Range["D10"].NumberFormat = "#,##0.00"
# 设置红色的数字
sheet.Range["B11"].Text = "红色数字"
sheet.Range["C11"].Text = "12345.12345"
sheet.Range["D11"].NumberValue = 12345.12345
sheet.Range["D11"].NumberFormat = "[Red]###0.00"
# 设置带两位小数的百分数
sheet.Range["B12"].Text = "带两位小数的百分数"
sheet.Range["C12"].Text = "0.12345"
sheet.Range["D12"].NumberValue = 0.12345
sheet.Range["D12"].NumberFormat = "0.00%"
# 设置带括号的数字
sheet.Range["B13"].Text = "带括号的数字"
sheet.Range["C13"].Text = "-1234.5678"
sheet.Range["D13"].NumberValue = -1234.5678
sheet.Range["D13"].NumberFormat = "(###0.00;(###0.00))"
# 设置日期
sheet.Range["B14"].Text = "日期"
sheet.Range["C14"].Text = "36526"
sheet.Range["D14"].NumberValue = 36526
sheet.Range["D14"].NumberFormat = "yyyy/m/d"
# 设置24小时制时间
sheet.Range["B15"].Text = "24小时制时间"
sheet.Range["C15"].Text = "0.6"
sheet.Range["D15"].NumberValue = 0.6
sheet.Range["D15"].NumberFormat = "H:MM:SS"
# 设置中文格式的货币
sheet.Range["B16"].Text = "中文格式的货币"
sheet.Range["C16"].Text = "1234.56"
sheet.Range["D16"].NumberValue = 1234.56
sheet.Range["D16"].NumberFormat = "¥#,##0.00"
# 设置科学计数法
sheet.Range["B17"].Text = "科学计数法"
sheet.Range["C17"].Text = "1234.5678"
sheet.Range["D17"].NumberValue = 1234.5678
sheet.Range["D17"].NumberFormat = "0.00E+00"
# 设置日期和12小时制时间
sheet.Range["B18"].Text = "日期和12小时制时间"
sheet.Range["C18"].Text = "36526"
sheet.Range["D18"].NumberValue = 36526
sheet.Range["D18"].NumberFormat = "yyyy/m/d h:mm:ss 上午/下午"
# 设置带文本的数字
sheet.Range["B19"].Text = "带文本的数字"
sheet.Range["C19"].Text = "1234.5678"
sheet.Range["D19"].NumberValue = 1234.5678
sheet.Range["D19"].NumberFormat = "\"CNY \"###0.00"
# 设置字体、字体大小并自动调整行列
sheet.AllocatedRange.Style.Font.FontName = "HarmonyOS Sans SC"
sheet.AllocatedRange.Style.Font.Size = 13
sheet.AllocatedRange.AutoFitRows()
sheet.AllocatedRange.AutoFitColumns()
# 保存文件
workbook.SaveToFile("output/设置Excel单元格数字格式.xlsx", FileFormat.Version2016)
workbook.Dispose()

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.Doc 12.6.10 已发布。本次更新新增支持加载 XML 格式的自定义字体替换规则进行转换,以及保存文档默认字体替换规则的 XML。此外,该版本还增强了 Word 到 PDF 和 HTML 到 Word 的转换功能。详情请阅读以下内容。
新功能:
Document document = new Document();
document.LoadFromFile(inputFile);
document.SaveFontFallbackRuleSettings("FontReplacementRuleSettings.xml");Document document = new Document();
document.LoadFromFile(inputFile);
document.LoadFontFallbackRuleSettings(“CustomFontReplacementRuleSettings.xml”);
document.SaveToFile(outputFile, FileFormat.PDF);问题修复:
在 Microsoft Word 中,添加、修改和移除页面边框是一种视觉修饰手段,用于增强文档的外观和专业性。添加边框可以使页面显得更整洁、正式,尤其在报告、证书或邀请函等场合。通过修改边框的颜色、样式和宽度,用户可以根据文档的主题进行个性化设计,使其更具吸引力。移除边框则有助于简化页面布局,减少视觉干扰,特别是在需要极简风格或节省打印墨水的情况下。本文将介绍如何使用 Spire.Doc for .NET 在 C# 项目中添加、修改和移除 Word 页面边框。
首先,您需要将 Spire.Doc for.NET 包含的 DLL 文件作为引用添加到您的 .NET项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。
PM> Install-Package Spire.Doc
要设置 Word 文档的页面边框,Spire.Doc 库提供了一套全面的 API,其中核心是通过 Section.PageSetup.Borders 属性进行操作。以下是详细的步骤:
using Spire.Doc;
namespace SpireDocDemo
{
internal class Program
{
static void Main(string[] args)
{
// 创建一个Document对象
Document doc = new Document();
// 加载一个现有的Word文档
doc.LoadFromFile("示例01.docx");
// 遍历文档中的所有节(section)
for (int i = 0; i < doc.Sections.Count; i++)
{
// 设置当前节的所有页面应用边框
doc.Sections[i].PageSetup.PageBordersApplyType = PageBordersApplyType.AllPages;
// 设置边框样式
doc.Sections[i].PageSetup.Borders.BorderType = Spire.Doc.Documents.BorderStyle.Double;
// 设置边框宽度
doc.Sections[i].PageSetup.Borders.LineWidth = 1;
// 设置边框颜色
doc.Sections[i].PageSetup.Borders.Color = System.Drawing.Color.LightSkyBlue;
// 设置顶部边框与页面内容的距离
doc.Sections[i].PageSetup.Borders.Top.Space = 20;
// 设置底部边框与页面内容的距离
doc.Sections[i].PageSetup.Borders.Bottom.Space = 20;
// 设置左侧边框与页面内容的距离
doc.Sections[i].PageSetup.Borders.Left.Space = 20;
// 设置右侧边框与页面内容的距离
doc.Sections[i].PageSetup.Borders.Right.Space = 20;
}
// 保存修改后的文档到新的文件
doc.SaveToFile("添加Word页面边框.docx", FileFormat.Docx);
// 释放Document对象所占用的资源
doc.Dispose();
}
}
}

Spire.Doc 库提供了用于自定义 Word 文档中页面边框的细节,包括边框的样式、颜色、宽度以及其他外观属性。可以根据需要自定义这些属性来实现想要的效果。以下是详细的步骤:
using Spire.Doc;
namespace SpireDocDemo
{
internal class Program
{
static void Main(string[] args)
{
// 创建一个Document对象
Document doc = new Document();
// 加载一个现有的Word文档
doc.LoadFromFile("示例02.docx");
// 获取第一个节
Section section = doc.Sections[0];
// 设置边框样式
section.PageSetup.Borders.BorderType = Spire.Doc.Documents.BorderStyle.DotDotDash;
// 设置边框颜色
section.PageSetup.Borders.Color = System.Drawing.Color.Orange;
// 设置边框宽度
section.PageSetup.Borders.LineWidth = 2;
// 保存修改后的文档到新的文件
doc.SaveToFile("修改Word页面边框.docx", FileFormat.Docx);
// 释放Document对象所占用的资源
doc.Dispose();
}
}
}

要移除 Word 页面边框,只需将页面边框样式 Section.PageSetup.Borders.BorderType 设置为 BorderStyle.None。以下是详细的步骤:
using Spire.Doc;
namespace SpireDocDemo
{
internal class Program
{
static void Main(string[] args)
{
// 创建一个Document对象
Document doc = new Document();
// 加载一个现有的Word文档
doc.LoadFromFile("示例02.docx");
// 遍历文档中的所有节(section)
for (int i = 0; i < doc.Sections.Count; i++)
{
// 移除页面边框
doc.Sections[i].PageSetup.Borders.BorderType = Spire.Doc.Documents.BorderStyle.None;
}
// 保存修改后的文档到新的文件
doc.SaveToFile("移除Word页面边框.docx", FileFormat.Docx);
// 释放Document对象所占用的资源
doc.Dispose();
}
}
}

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
Spire.PDF for Java 10.6.2 已发布。本次更新增强了 PDF 到 OFD 和图片,以及 SVG 到 PDF 的转换功能。此外,一些已知问题也在该版本中成功修复,如提取 PDF 表格时程序抛 "StringIndexOutOfBoundsException" 错误的问题。详情请阅读以下内容。
问题修复:
在 Excel 中,表格是一个结构化的数据区域,每列均有标题。将单元格区域转换成表格后,Excel 会自动对其应用格式,如给表格的每个标题单元格添加筛选按钮,同时提供更强大的数据操作和分析功能。在这篇文章中,我们将介绍如何使用 Spire.XLS for .NET 和 C# 在 Excel 中创建、修改和删除表格。
首先,您需要将 Spire.XLS for .NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。
PM> Install-Package Spire.XLS
你可以使用 Worksheet.ListObjects.Create(tableName, cellRange) 方法将 Excel 工作表中的特定数据区域转换为表格。具体步骤如下:
using Spire.Xls;
using Spire.Xls.Core;
namespace CreateTable
{
internal class Program
{
static void Main(string[] args)
{
// 创建Workbook类的对象
Workbook workbook = new Workbook();
// 加载Excel文件
workbook.LoadFromFile("示例.xlsx");
// 获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
// 获取要转换为表格的单元格区域
CellRange range = sheet.Range[1, 1, sheet.LastRow, sheet.LastColumn];
// 将单元格区域转换为表格
IListObject table = sheet.ListObjects.Create("销售", range);
// 使用内置表格样式格式化表格
table.BuiltInTableStyle = TableBuiltInStyles.TableStyleLight2;
// 将生成的工作簿保存到文件
workbook.SaveToFile("创建表格.xlsx", ExcelVersion.Version2016);
workbook.Dispose();
}
}
}

你可以在 Excel 表格的末尾添加一个汇总行,用于显示汇总计算,例如总和、平均值等。具体步骤如下:
using Spire.Xls;
using Spire.Xls.Core;
namespace AddTotalRowToTable
{
internal class Program
{
static void Main(string[] args)
{
// 创建Workbook类的对象
Workbook workbook = new Workbook();
// 加载Excel文件
workbook.LoadFromFile("创建表格.xlsx");
// 获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
// 获取工作表中的第一个表格
IListObject table = sheet.ListObjects[0];
// 显示合计行
table.DisplayTotalRow = true;
// 设置合计行标签
table.Columns[0].TotalsRowLabel = "合计";
// 设置总和计算函数
table.Columns[3].TotalsCalculation = ExcelTotalsCalculation.Sum;
table.Columns[4].TotalsCalculation = ExcelTotalsCalculation.Sum;
// 将生成的工作簿保存到文件
workbook.SaveToFile("添加汇总行.xlsx", ExcelVersion.Version2016);
workbook.Dispose();
}
}
}

你可以通过更新表格的数据区域(IListObject.Location 属性)来调整表格的大小。具体步骤如下:
using Spire.Xls;
using Spire.Xls.Core;
namespace ResizeTable
{
internal class Program
{
static void Main(string[] args)
{
// 创建Workbook类的对象
Workbook workbook = new Workbook();
// 加载Excel文件
workbook.LoadFromFile("创建表格.xlsx");
// 获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
// 获取工作表中的第一个表格
IListObject table = sheet.ListObjects[0];
// 调整表格的数据区域
table.Location = sheet.Range["C1:E8"];
// 将生成的工作簿保存到文件
workbook.SaveToFile("调整表格.xlsx", ExcelVersion.Version2016);
workbook.Dispose();
}
}
}

如果你不再需要表格,可以使用 IListObjects.RemoveAt(tableIndex) 方法将其转换回普通的单元格区域。具体步骤如下:
using Spire.Xls;
using Spire.Xls.Core;
namespace RemoveTable
{
internal class Program
{
static void Main(string[] args)
{
// 创建Workbook类的对象
Workbook workbook = new Workbook();
// 加载Excel文件
workbook.LoadFromFile("创建表格.xlsx");
// 获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
// 获取工作表的表格集合
IListObjects tables = sheet.ListObjects;
// 通过索引移除指定的表格
tables.RemoveAt(0);
//// 或者按名称移除特定的表格
//for (int i = tables.Count - 1; i >= 0; i--)
//{
// // 检查表格名称是否与特定值匹配
// if (tables[i].Name == "销售交易")
// {
// // 移除表格
// tables.RemoveAt(i);
// }
//}
// 将生成的工作簿保存到文件
workbook.SaveToFile("删除表格.xlsx", ExcelVersion.Version2016);
workbook.Dispose();
}
}
}

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。