Perl Excel - 从变量插入带行,col编号的空行

时间:2013-07-03 22:10:08

标签: perl excel ole win32ole

尝试使用以下代码插入空行时

  

我的$ StartRow =“101”;我的$ StartCol =“1”;

     

$片状个细胞($ STARTROW,$ StartCol) - > EntireRow->插入;

发生错误:Win32 :: OLE(0.1709)错误0x800a03ec     在METHOD / PROPERTYGET“Cells”中,位于1_SPNV3G_WSS-MGW_1_0_Chicago.pl第1732行。

Win32 :: OLE(0.1709)错误0x80010108:“调用的对象已断开连接 来自其客户“     在METHOD / PROPERTYGET“关闭”1_SPNV3G_WSS-MGW_1_0_Chicago.pl第6310行。

如果我直接给出这些值,则没有发现问题。

  

$片状个细胞(101,1) - > EntireRow->插入;

有什么想法吗?

P.S。我指的是插入行的这个线程。 http://www.perlmonks.org/?node_id=882700

1 个答案:

答案 0 :(得分:1)

因为,Perl动态地推断出变量的类型。变量$StartRow$StartCol被视为字符串,因为您将其指定值括在引号中。删除引号,他们将工作,因为'细胞' method期望整数作为参数。或尝试

$StartRow = int ($StartRow);
$StartCol = int ($StartCol);

这应该有效。我最近在这样做时遇到了这个

my ($i, $j) = split (/\s*,\s*/, $address);
print "\n".$sheet->Cells($i, $j)->{Value};

此处,拆分操作返回的值被视为字符串。然后我将它们转换为整数并且它有效。