我的代码存在问题。我希望使用PowerShell打开Access文件,然后将表导出到Excel文件。到目前为止,这是我的代码。
$MsAccess = New-object -com Access.Application
$MsAccess.OpenCurrentDatabase('<Filepath>',$false)
$MsAccess.Application.DoCmd.OpenTable("<TableName>")
$MsAccess.Application.DoCmd.OutputTo('acOutputTable, "<TableName>" , acFormatXLS , "OutputName.xls", true')
$MsAccess.CloseCurrentDatabase()
$MsAccess.Quit()
始终会出现错误:
$MsAccess.Application.DoCmd.OutputTo('acOutputTable, "TableName" , acFormatXLS , "OutputName.xls", true')
错误说明:
$MsAccess.Application.DoCmd.OutputTo('acOutputTable, "TableName" , acFormatXLS , "OutputName.xls", true')
Exception calling "OutputTo" with "1" argument(s): "Type mismatch. (Exception
from HRESULT: 0x80020005 (DISP_E_TYPEMISMATCH))"
我一直试图将表格导出为excel一段时间,但我似乎找不到有关通过PowerShell使用excel的大量文档。有人会就如何解决这个问题提出任何建议吗?
note: placeholders such as TableName, filepath, etc are not actual names, just replacements
答案 0 :(得分:0)
试试这个:
$MsAccess.Application.DoCmd.OutputTo(0, "<TableName>" , 0, "OutputName.xls", $true)
答案 1 :(得分:0)
我最终使用docmd.transfer电子表格命令来解决此问题。我觉得powershell并不喜欢outputto。