use strict;
use warnings;
use Win32::olE; #导入win32 olE包
#my $dir = 'D://myperl//win32ole//'; #在此目录下新建两个EXCEL
my $dir ='D:/teradata/3program/';
my $src_name = $dir."test1".".xlsx";
my $dst_name = $dir."test2".".xlsx";
my $Nowstr;
#新建一个EXCEL应用对象,然后我们就可以对excel进行 *** 作。
my $app_xls = Win32::olE->new('Excel.Application',sub{$_[0]->Quit})
or dIE"Can't install Excel01!";
$app_xls->{displayAlerts} = 'False'; #关闭提示
#打开一个EXCEL文件,'True' 表示是只读
#print($src_name);
my $src_book = $app_xls->WorkBooks->Open($src_name);
my $src_sheet = $src_book->Worksheets(1); #选中一工作表
$Nowstr = $src_sheet->Cells(1,'A')->{Value}; #取得一单元格中数据
#print("\nNowstr:".$Nowstr."\n");
$src_sheet->Cells(1,'A')->{Value}="changing"; #修改一单元格中数据
$src_book->Save;
my $dst_book = $app_xls->WorkBooks->Open($dst_name);
my $dst_sheet = $dst_book->Worksheets(1);
#$app_xls->{displayAlerts} = 'False'; #关掉excel的提示,比如是否保存修改之类的
#$dst_book->Worksheets(1)->Delete; #删除一工作表
#从一个excel里复制一工作表到另一excel中
$src_book->Worksheets(1)->copy($dst_book->Worksheets('sheet3'));
$dst_book->Save; #保存所做修改
$app_xls->{displayAlerts} = 'True'; #恢复提示
undef $src_book;
undef $dst_book;
undef $app_xls; #关掉所打开的excel应用
#若出现 can't call method worksheets on an undefined value at
#则可能是路径、文件名等错误,可以打印出来确保正确
总结以上是内存溢出为你收集整理的perl win32::ole *** 作excel全部内容,希望文章能够帮你解决perl win32::ole *** 作excel所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)