【问题标题】:Convert a CSV/Excel file into and EXCEL file with formatting as table将 CSV/Excel 文件转换为格式为表格的 EXCEL 文件
【发布时间】:2018-01-17 00:18:10
【问题描述】:

上下文:

我有一个每天运行的查询。我想将查询结果数据通过电子邮件发送给利益相关者,但我需要为他们预先格式化,因为他们可能不具备将数据格式化为表格所需的技能。我有 SSRS,它非常适合呈现数据,但我仍然希望将文件通过电子邮件发送给他们进行过滤。我可以从查询中生成 CSV 或 Excel 并自动输出电子邮件,但必须先预先格式化表格。

问题:

我有一个查询的简单 CSV/Excel 文件输出。

cust_id,cust_name
1,bishop
2,ripley

我想将此 CSV/Excel 输出文件转换为预先格式化为带有标题的可排序、可过滤表的文件,并自动执行此过程。

Excel formatted table image

这可能来自 python 或其他一些服务器友好的代码 sn-p 吗? CSV >> Excel 格式或 Excel >> Excel 格式。在这种情况下,两种起始文件类型都可以。

限制:

我无法安装、更新或导入不属于现有 python 库的包。

【问题讨论】:

  • 我想你要找的是XlsxWriter。这是文档:xlsxwriter.readthedocs.io
  • 要读取 CSV/Excel 文件,我建议使用pandas,根据输入使用pandas.read_csv()pandas.read_excel()
  • 我对 python 不太熟悉,但您可以使用 VBA 实现这一点(不确定这是否适合您)。我会有一个带有 VBA 的 Excel 文件,它可以读取 csv 文件,创建一个新的 excel 工作簿,格式化数据,然后使用 VBA 通过电子邮件发送它。但同样,我不确定这是否适合您?
  • 使用XML,这允许将数据与格式化分开。包 xml 应该在标准 Python 设置中可用。

标签: python excel csv


【解决方案1】:

Python 的 xlsxwriter 应该具备您需要的所有功能。

模块页面在这里:http://xlsxwriter.readthedocs.io/index.html

此处的表格格式示例http://xlsxwriter.readthedocs.io/tutorial02.html

此处添加自动过滤器的示例:http://xlsxwriter.readthedocs.io/example_autofilter.html

在阅读更新的限制(无法在服务器上安装模块)后,很明显在没有像 Anaconda 这样的情况下使用 xlsxwriter 是不行的。后备解决方案未知,我不知道标准 python 安装附带的任何模块可以满足您的需要。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-07
相关资源
最近更新 更多