我安装了Strawberry Perl和PPM。我并不陌生从CPAN手动安装模块,但最近进入了一种情况,其中一个模块需要一个依赖,并且 - 依赖需要二十个..
所以我决定给PPM一个旋转(因为它会自动安装依赖项,对吗?),我最初认为它像Ruby Gems一样工作。我加载它并输入:
ppm> install OLE::Storage_Lite
来自tutorial。
然后我遇到了问题'找不到PPD文件'。
所以我按照这个tutorial引导你连接到一个存储库的链接,它仍然找不到PPD文件。
我的问题是:任何人都可以帮我加载一个Perl模块,这样我就可以从Excel文件中读取和写入了吗?
解决:我的问题原来是工作中的代理服务器,不允许我通过PPM下载软件包。
答案 0 :(得分:3)
两件事:
cpan install My::Module
即可安装模块及其依赖项。Win32::OLE
。 Win32::OLE
是用于与Windows中的COM和OLE对象进行交互的标准模块,它运行良好。它已经包含在Strawberry Perl中,效果很好!您只需要查看有关Perl和'OLE Automation'的文档。它看起来像这样:
use strict;
use warnings;
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Excel'; # brin in Excel constants
my $excel = Win32::OLE->new('Excel.Application') or die "oops\n";
事实上,如果您查看有关CPAN的Win32::OLE文档,您会看到他们在如何使Excel自动化工作方面有几个例子。
之后,快速搜索“Excel OLE Automation”将会显示许多教程,向您展示调用Excel所需的所有方法以及Excel的怪癖。但在那之后,它非常直接!一些例子:
my $sheet = $excel->Worksheets(1); #Gets the first worksheet, 1 indexed
$sheet->Cells($row, $col); # do something to a cell
$sheet->Columns("A:D"); # do something to some columns
$sheet->Rows($row_number); # do something to a row
显然还有更多(excel API非常庞大),但这应该会开始。