PowerShell을 사용하여 CSV를 Excel로 내보내는 방법
- Excel COM 객체 PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기
- Excel COM 객체 PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기
-
PSExcel
PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기 - 결론

CSV (쉼표로 구분된 값)는 데이터가 표 형식으로 저장되는 일반 텍스트 파일입니다. 컴마 또는 세미콜론과 같은 기타 구분 기호로 구분된 데이터 목록을 포함합니다.
CSV 파일은 .csv
확장자를 가지며 Microsoft Excel과 같은 스프레드시트 프로그램으로 볼 수 있습니다. .xlsx
확장자를 가진 파일은 Microsoft Excel 워크시트 파일입니다.
이 기사에서는 PowerShell을 사용하여 CSV 파일을 Excel로 내보내는 구체적인 방법을 다루며, Excel COM 객체, ImportExcel
모듈 및 PSExcel
모듈의 세 가지 독특한 방법을 소개합니다. 각 방법은 서로 다른 시나리오와 요구사항을 충족하며, 독특한 장점을 제공합니다.
Excel COM 객체 PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기
Excel COM 객체 방법은 Windows 환경에서 데이터 변환 및 보고를 처리할 때 특히 유용합니다. 이 접근 방식은 CSV 데이터를 보다 사용자 친화적인 Excel 형식으로 변환하는 프로세스를 자동화해야 하는 사람들에게 이상적이며, 이는 비즈니스 및 데이터 분석에서 널리 사용됩니다.
스크립트:
# Define the CSV file path and the Excel file path
$csvPath = "C:\path\file.csv"
$excelPath = "C:\path\file.xlsx"
# Start Excel application
$excel = New-Object -ComObject excel.application
$workbook = $excel.Workbooks.Add()
$worksheet = $workbook.worksheets.Item(1)
# Import CSV data into the worksheet
$row = 1
Import-Csv $csvPath | ForEach-Object {
$col = 1
foreach ($value in $_.PSObject.Properties.Value) {
$worksheet.Cells.Item($row, $col) = $value
$col++
}
$row++
}
# Save and close Excel workbook
$workbook.SaveAs($excelPath)
$excel.Quit()
이 스크립트에서는 먼저 소스 CSV 파일과 목적지 Excel 파일의 경로를 정의합니다. 그런 다음 Excel 애플리케이션 인스턴스를 초기화하고 단일 워크시트가 있는 새 통합 문서를 추가합니다.
Import-Csv
cmdlet은 CSV 파일을 읽으며 ForEach-Object
를 사용하여 각 레코드를 반복합니다. 루프 내에서 각 값을 Excel 워크시트의 해당 셀에 할당합니다.
CSV 파일의 모든 데이터로 워크시트를 채운 후, 지정된 경로에 통합 문서를 저장하고 Excel 애플리케이션을 닫습니다.
출력:
Excel COM 객체 PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기
Excel COM 객체 방법은 Windows 환경에서 데이터 변환 및 보고를 처리할 때 특히 유용합니다. 이 접근 방식은 CSV 데이터를 보다 사용자 친화적인 Excel 형식으로 변환하는 프로세스를 자동화해야 하는 사람들에게 이상적이며, 이는 비즈니스 및 데이터 분석에서 널리 사용됩니다.
먼저, ImportExcel
모듈을 설치해야 합니다. 설치하지 않았다면.
Install-Module -Name ImportExcel -Force -Scope CurrentUser
스크립트:
# Install the ImportExcel module if not already installed
# Install-Module -Name ImportExcel -Scope CurrentUser
# Define the CSV and Excel file paths
$csvPath = "C:\path\file.csv"
$excelPath = "C:\path\file.xlsx"
# Import data from CSV and export to Excel
Import-Csv -Path $csvPath | Export-Excel -Path $excelPath
# Print completion message
Write-Host "CSV data has been exported to Excel at: $excelPath"
이 스크립트에서는 먼저 ImportExcel
모듈이 설치되어 있는지 확인합니다. 이 모듈은 기본적으로 PowerShell에 포함되어 있지 않으며 Install-Module
을 사용하여 PowerShell 갤러리에서 설치해야 할 수 있습니다.
다음으로, 소스 CSV 파일과 목적지 Excel 파일의 파일 경로를 정의합니다. Import-Csv
cmdlet은 CSV 파일을 읽으며, 파이프라인(|
)은 가져온 데이터를 직접 Export-Excel
cmdlet으로 전달하여 지정된 위치에 Excel 파일을 생성합니다.
이 스크립트는 간단하고 효율적으로 설계되어 PowerShell 스크립팅에 익숙하지 않은 사람들에게도 접근 가능하게 합니다. PowerShell을 사용하여 CSV에서 Excel 형식으로 데이터를 변환하는 용이성을 효과적으로 보여줍니다.
출력:
PSExcel
PowerShell을 사용하여 CSV 파일을 Excel 파일로 내보내기
PSExcel
모듈은 Excel이 시스템에 설치되어 있지 않아도 Excel 파일과 상호 작용하기 위해 PowerShell의 기능을 활용합니다. 이는 서버나 자동화된 시스템과 같이 Excel 설치가 비현실적인 환경에서 특히 유용합니다.
PSExcel
은 보고서 생성, 데이터 분석 및 데이터를 Excel과 같은 보다 보기 좋고 접근 가능한 형식으로 변환하는 작업에 널리 사용됩니다.
먼저, PSExcel
모듈을 설치해야 합니다. 설치하지 않았다면.
Install-Module -Name PSExcel -Force -Scope CurrentUser
스크립트:
#Define the CSV and Excel file paths
$csvPath = "C:\path\file.csv"
$excelPath = "C:\path\file.xlsx"
# Import data from CSV
$csvData = Import-Csv -Path $csvPath
# Export data to Excel
$csvData | Export-Excel -Path $excelPath
# Print completion message
Write-Host "CSV data has been exported to Excel at: $excelPath"
이 스크립트에서는 먼저 PSExcel
모듈이 설치되어 있는지 확인합니다. 기본적으로 PowerShell에 포함되어 있지 않으며 PowerShell 갤러리에서 설치할 수 있습니다.
그런 다음 소스 CSV 파일과 목적지 Excel 파일의 경로를 정의합니다. Import-Csv
cmdlet은 CSV 파일을 변수에 읽어오는 데 사용됩니다.
이 가져온 데이터는 Export-Excel
cmdlet으로 파이프되어 지정된 위치에 Excel 파일을 생성합니다.
출력:
결론
PowerShell을 사용하여 CSV 파일을 Excel로 내보내는 방법에 대한 이 포괄적인 가이드는 데이터 변환 작업을 처리하는 데 있어 PowerShell의 유연성과 강점을 보여주었습니다. 탐색한 각 방법 - Excel COM 객체, ImportExcel
모듈, 및 PSExcel
모듈 - 은 서로 다른 환경과 요구 사항에 맞춰 독특한 이점을 제공합니다.
Excel COM 객체는 Windows 환경에서 Excel과 직접 상호 작용하기 위한 견고한 선택으로, 복잡한 데이터 조작 작업에 이상적입니다. ImportExcel
및 PSExcel
모듈은 Excel 소프트웨어가 없는 경우에도 Excel 파일을 수월하게 처리할 수 있도록 PowerShell의 기능을 확장하는 대안적 접근 방식을 제공합니다.
이 방법들은 PowerShell의 다재다능함을 강조할 뿐만 아니라 데이터 변환 작업을 자동화하고 단순화하기 위한 실용적인 솔루션을 제공합니다. PowerShell 스크립팅에 입문한 초보자든 경험이 많은 전문가든, 이 방법들은 다양한 시나리오에서 데이터 처리 및 보고 기능을 향상시키기 위한 귀중한 도구를 제공합니다.