我正在寻找一种工具或流程来帮助自动执行需要特定格式的 Excel 或 CSV 文件的重复性工作流任务。
例如,我们与供应商合作,供应商会向我们发送一份客户名单。我们收到的电子表格中的数据是相同的,但格式可能略有不同。例如,我们可能会收到一个包含以下列的文件:
[ID][FName][LName][Birthday]
但是,我们假设我们的系统需要它的形状如下:
[ID][FirstName][LastName][Birthdate]
此外,数据的格式可能与我们系统预期的格式略有不同。例如,假设出生日期列需要采用特定格式 (MM/DD/YYYY),而供应商可能将其提供为 (YYYY-MM-DD)。
假设我们从供应商处收到的文件总是以相同的格式发送,我们希望快速转换这些文件以与我们的系统兼容。
在我看来,理想的应用程序应具有以下特点:
- 能够处理 Excel 或 CSV 文件
- 定义如何重命名列
- 定义每列的数据格式
- 清理不良数据(有时客户在字段中有字符串 #N/A,在我们的系统中应将其视为空白)
- 输出为 CSV
- 通过匹配列来合并行(有时我们会收到多个文件,需要通过 ID 将它们合并在一起)
- GUI 界面非常适合定义规则,然后使用 CLI 运行它可能对自动化/未来的运行有帮助
- 能够保存这些设置,以便我们可以通过使用先前定义的设置加载新数据来快速重新运行它们。
有没有一种工具或工作流程可以以很少的摩擦完成这一任务?如果有必要,我们可以内部开发一些东西,但如果已经有一个工具可以很容易地做到这一点,那就太理想了。
答案1
您的问题读起来就像 Power Query 的产品描述。这是 Microsoft 提供的免费插件,可与 Excel 2010 和 2013 配合使用。
在这里获取:https://www.microsoft.com/en-us/download/details.aspx?id=39379
您可以打开 CSV 文件、重命名列、替换值、定义数据格式等。每项活动都会被记录并可进行编辑。查询可以随时保存和重复。输出可以放入 Excel 工作表中,并可保存为 CSV。
编辑:Power Query 现已适用于所有版本的 Office 2013。引用下载页面上的系统要求
支持以下 Office 版本:
- Microsoft Office 2010 Professional Plus(带软件保障)
- Microsoft Office 2013:
- Power Query Premium:所有 Power Query 功能适用于:Professional Plus、Office 365 ProPlus 或 Excel 2013 Standalone
- Power Query Public:适用于所有其他 Office 2013 桌面 SKU。包括所有 Power Query 功能,但以下功能除外:企业 Power BI 数据目录、基于 Azure 的数据源、Active Directory、HDFS、SharePoint 列表、Oracle、DB2、MySQL、PostgreSQL、Sybase、Teradata、Exchange、Dynamics CRM、SAP BusinessObjects、Salesforce。
Microsoft Power Query for Excel 需要 Internet Explorer 9 或更高版本。