我目前在 Windows 中有一个 perl 程序,它通过 Spreadsheet::WriteExcel 创建和填充一个 excel 文件,但我希望在我的程序关闭时打开该文件。我尝试用谷歌搜索信息,但我发现的只是如何在 perl 中打开和读取 excel 文件。有人可以帮助我吗?
问问题
2746 次
4 回答
3
我推荐这个:
`your_file.xls`;
它只是执行系统命令。假设 Excel 文件设置为默认使用 Excel 打开,这将起作用(根据您的设置,可能需要也可能不需要添加文件的完整路径)。
其他选项:
system("your_file.xls");
`C:\\Program Files\\...\\excel.exe your_file.xls`;
system("C:\\Program Files\\...\\excel.exe your_file.xls");
于 2012-08-15T14:49:35.287 回答
2
我会为此使用Win32::OLE。OLE 是可用于执行应用程序任务的 Office 扩展。这个例子应该可以工作(我没有测试过):
use strict;
use warnings;
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Excel';
my $excel = Win32::OLE->GetActiveObject('Excel.Application')
|| Win32::OLE->new( 'Excel.Application', 'Quit' );
$excel->{Visible} = 1;
如果您最终走这条路,这里是对 Excel 2007 命令的参考。
于 2012-08-15T14:42:30.687 回答
-1
以下对我有用。它不需要使用任何额外的模块。
system "start excel $file";
于 2017-12-24T18:35:07.060 回答
-1
你可以像这样在 Perl 中使用 exec 命令:
my $excel_file = "file.xlsx";
exec "cmd", "/c", "start", $excel_file;
这将打开系统中的默认程序以打开 xlsx 文件。我喜欢这个选项,因为如果用户没有安装 excel,只安装 libreoffice(例如),系统将使用 libreoffice 打开文件。
于 2018-06-05T14:36:40.350 回答