【问题标题】:Copy sheets from multiple excel files and paste into a new xlsx从多个 excel 文件复制工作表并粘贴到新的 xlsx
【发布时间】:2020-04-24 07:57:40
【问题描述】:

我有一个文件夹,其中包含多个 Excel 工作簿,每个工作簿都有一个名称相同的选项卡。我想从每个工作簿中复制选项卡并使用 powershell 将它们放入一个新的 xlsx 中。 开始于:20 个具有“sheet1”的工作簿 期望的结果:1 个包含 20 个“sheet1”选项卡的工作簿。 这是我开始的代码,但我不确定我是否在正确的轨道上。无论我的用户名如何,我都是 powershell 新手。使用下面的代码,我可以从 xlsx 复制工作表并将其粘贴到新的 xlsx 中。如何从多个 xlsx 复制喜欢的命名表并将它们放入新的 xlsx 中

Copy-ExcelWorksheet -SourceWorkbook ('c:\users\user1\test.xlsx') -SourceWorksheet 'Sheet1' -DestinationWorksheet Sheet1 -DestinationWorkbook 'c:\users\user1\test2.xlsx'

【问题讨论】:

  • 我发现 ImportExcel 模块非常有用。 Find-Module -Name ImportExcel

标签: excel powershell


【解决方案1】:
$ExcelObject=New-Object -ComObject excel.application
$ExcelObject.visible=$false
$ExcelFiles=Get-ChildItem -Path C:\Users\user1

$Workbook=$ExcelObject.Workbooks.add()
$Worksheet=$Workbook.Sheets.Item('Sheet1')

foreach($ExcelFile in $ExcelFiles){

$Everyexcel=$ExcelObject.Workbooks.Open($ExcelFile.FullName)
$Everysheet=$Everyexcel.sheets.item('Sheet1')
$Everysheet.Copy($Worksheet)
$Everyexcel.Close()

}
$Workbook.Saveas("C:\Users\user1\test.xlsx")
$ExcelObject.Quit()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-25
    • 1970-01-01
    相关资源
    最近更新 更多