excel - 如何从文本文件中提取字符串并使用 Powershell 将它们复制到 Excel 工作表
问题描述
我有很多包含如下数据的文本文件:
refresh: '<%= GlobalizationUtil.GetText(GlobalizationKey.Refresh) %>',
close: '<%= GlobalizationUtil.GetText(GlobalizationKey.Close) %>',
all: '<%= GlobalizationUtil.GetText(GlobalizationKey.All) %>',
entries: '<%= GlobalizationUtil.GetText("DepMethodEdit_Entries") %>',
archive: '<%= GlobalizationUtil.GetText("worklist_Archive") %>',
onequarter: '<%= GlobalizationUtil.GetText("worklist_onequarter") %>',
halfyear: '<%= GlobalizationUtil.GetText("worklist_halfyear") %>',
oneyear: '<%= GlobalizationUtil.GetText("worklist_oneyear") %>',
twoyears: '<%= GlobalizationUtil.GetText("worklist_twoyears") %>',
customize: '<%= GlobalizationUtil.GetText("CBW_EditDashlet") %>',
notSentLabel: '<%= GlobalizationUtil.GetText("status-notsend") %>',
sentLabel: '<%= GlobalizationUtil.GetText("status-sent") %>',
errorSendingLabel: '<%= GlobalizationUtil.GetText("status-error") %>',
openLabel: '<%= GlobalizationUtil.GetText(GlobalizationKey.Open) %>',
rejectedLabel: '<%= GlobalizationUtil.GetText("DocumentStatus_Rejected") %>',
normalLabel: '<%= GlobalizationUtil.GetText("Normal") %>',
creditLabel: '<%= GlobalizationUtil.GetText(GlobalizationKey.Credit) %>',
deleteinvoice: '<%= GlobalizationUtil.GetText("ProcessedInvoicingDelete") %>'
是否可以提取此字符串 <%= GlobalizationUtil.GetText("ProcessedInvoicingDelete") %> 并使用 Powershell 将其复制到 Excel 工作表中?
解决方案
是的。高水平:
- 获取文本文件的内容
- 对每个元素(行)使用
Select-String
或[regex]::Matches
- 导出为 CSV(如果您不想要标题,请使用,
Set-Content
否则使用Export-CSV
) - 创建 Excel ComObject
- 打开工作簿和工作表
- 使用
SaveAs
方法 - 退出 Excel ComObject
推荐阅读
- java - 保存并加载使用的图像
- ios - UITableView 滑动自定义按钮消失
- css - 如何在 Bootstrap 4 中垂直对齐项目?
- logstash - 如何通过logstash grok config提取包含在另一个字段中的字段
- prettier - 使用 Stylelint 和 Prettier 强制执行行距样式指南规则
- c# - WPF 命令可以执行没有响应
- javascript - 使用 JavaScript 设置不同消息的 SetInterval
- python - Python/Pandas - 有兴趣的累计和
- json - Circe 解码案例类
- python - 仅针对某一列的公共值合并两个文本文件