使用 PowerShell 将 CSV 导出到 Excel
Rohan Timalsina
2022年5月16日
CSV(逗号分隔值)是以表格格式存储数据的纯文本文件。它包含由逗号或其他分隔符(如分号)分隔的数据列表。
CSV 文件具有 .csv
扩展名,可以使用电子表格程序(如 Microsoft Excel)查看。具有 .xlsx
扩展名的文件是 Microsoft Excel 工作表文件。
本教程将教你使用 PowerShell 将 CSV 文件导出到 Excel 文件。
使用 PowerShell 将 CSV 文件导出到 Excel 文件
我们有一个 username.csv
文件,其中数据用分号分隔。当它在 Excel 应用程序中打开时,它以简单的文本格式而不是表格格式显示数据。
你可以使用以下 PowerShell 脚本将 CSV 文件转换为 Excel 文件。
脚本:
# Define file locations and delimiter
$csv = "C:\New\username.csv" # source file
$xlsx = "C:\New\output.xlsx" # destination file
$delimiter = ";" # delimiter used in the csv file
# Create a new Excel workbook with one empty sheet
$excel = New-Object -ComObject excel.application
$workbook = $excel.Workbooks.Add(1)
$worksheet = $workbook.worksheets.Item(1)
# Build the QueryTables.Add command and reformat the data
$TxtConnector = ("TEXT;" + $csv)
$Connector = $worksheet.QueryTables.add($TxtConnector,$worksheet.Range("A1"))
$query = $worksheet.QueryTables.item($Connector.name)
$query.TextFileOtherDelimiter = $delimiter
$query.TextFileParseType = 1
$query.TextFileColumnDataTypes = ,1 * $worksheet.Cells.Columns.Count
$query.AdjustColumnWidth = 1
# Execute & delete the import query
$query.Refresh()
$query.Delete()
# Save & close the Workbook as XLSX
$Workbook.SaveAs($xlsx,51)
$excel.Quit()
输出:
True
数据被导出到一个新的 output.xlsx
文件的指定位置。如果你打开 output.xlsx
文件,你将看到以表格格式排列的单元格中的数据。
使用上述脚本将大型分隔 CSV 文件转换为 Microsoft Excel 工作表 (xlsx)。希望本文能帮助你了解如何使用 PowerShell 将 CSV 文件导出到 Excel。
Author: Rohan Timalsina