PowerShell中无需数组向Excel追加PSCusomObject数据的方法
无需数组实现PowerShell Export-Excel追加数据
默认情况下,Export-Excel每次执行会覆盖目标文件,所以你两次导出后仅保留最后一个对象的数据。要实现追加,只需在第二次导出时添加-Append参数,同时指定要追加的工作表(确保和第一次导出的工作表一致)。
修改后的代码如下:
$myObject1 = [PSCustomObject]@{ "Hostname" = "W-1" "IPAdress" = "192.168.0.1" "Domain" = "true" "Private" = "true" "Public" = "false" } $myObject2 = [PSCustomObject]@{ "Hostname" = "W-2" "IPAdress" = "192.168.0.2" "Domain" = "true" "Private" = "false" "Public" = "false" } # 首次导出创建文件和工作表 $myObject1 | Export-Excel -Path C:\Users\admin\Desktop\test1.xlsx -AutoSize -WorksheetName "Hosts" # 追加数据到已有工作表 $myObject2 | Export-Excel -Path C:\Users\admin\Desktop\test1.xlsx -AutoSize -WorksheetName "Hosts" -Append
关键说明
-Append参数会让Export-Excel在指定工作表的末尾添加新数据,而非覆盖整个文件或工作表。- 显式指定
-WorksheetName可以避免因默认工作表名称变化导致的追加错误,确保所有数据都写入同一个表中。
内容的提问来源于stack exchange,提问作者Onyx
相关产品推荐
相关产品推荐

