Delphi - 在Excel中添加特殊字符

标签 delphi export-to-excel

我正在尝试将符号 - 白色方 block (Unicode 25A1) 插入 Excel 电子表格,但不断出现错误:

我尝试了以下方法,但没有成功:

1. WorkSheet.Cells[CurrRow,CurrCol].Formula := '=ChrW(&H25A1)';  

2. WorkSheet.Cells[CurrRow,CurrCol].Formula := '=Char(25A1)';  

运行宏也没有帮助,因为它说“?”

真的希望有人能帮助我

最佳答案

Excel 的 COM 接口(interface)是 Unicode API。 Excel 在内部使用 Unicode 字符串。只需将您的特殊字符通过 Delphi WideString 传递给 Excel 即可。您不需要 Excel 公式。

WorkSheet.Cells[CurrRow,CurrCol].Value := WideString(#$25A1);

如果您使用的是 Unicode 版本的 Delphi(即 2009 或更高版本),那么如果您将源代码设为 UTF-8 文件,则可以在源代码中包含 Unicode 字符。

WorkSheet.Cells[CurrRow,CurrCol].Value := WideString('□');

如果您开始添加非 ANSI 字符,IDE 会将您的源文件转换为 UTF-8。

关于Delphi - 在Excel中添加特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6591527/

相关文章:

delphi - 将字符一一添加到TMemo

delphi - 使用 tlist 的完整 Delphi 代码中的内存泄漏

c# - Shaman.EPPlus + ASP.NET Core MVC - 部分已存在异常

c# - 在使用 C# XmlWriter 制作的 XML excel 文档的单元格中显示多行文本值

java - GWT 导出表

php - 导出 xls 文件在 php 中的导入时间不可读

delphi - DevExpress ExpressSkins 还是 VCL 样式?

Delphi 2009 IDE结构 View 折叠功能

Delphi 在 case 语句中失败

java - 在weblogic 11 + linux中无法成功导出excel