【问题标题】:Why does Perl complain about barewords in my Win32::OLE script?为什么 Perl 抱怨我的 Win32::OLE 脚本中的裸词?
【发布时间】:2010-10-11 06:26:36
【问题描述】:
#___ FIND LAST ROW/COLUMN WITH DATA
my $row = $Sheet1 -> UsedRange -> Find(
     {      What => "*", 
            SearchDirection => xlPrevious,  
            SearchOrder => xlByRows
      })-> {Row};

错误:

Bareword "xlByRows" not allowed while "strict subs" in use. 

【问题讨论】:

    标签: perl warnings bareword


    【解决方案1】:

    CPAN docs for Win32::OLE::Const

    你需要:

    use Win32::OLE::Const 'Microsoft Excel';
    

    【讨论】:

      【解决方案2】:

      您必须将use Win32::OLE::Const 'Microsoft Excel'; 放在程序顶部才能正确导入常量。

      看看这个Perl Monks page。它似乎涵盖了您遇到的问题。

      【讨论】:

        【解决方案3】:

        xlByRows 不是一个常数,你应该把它放在引号里。除非它是由 OLE 对象导出的常量,在这种情况下,您需要使用 Win32::OLE::Const 或类似方法将其导入命名空间。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-01-31
          • 1970-01-01
          • 1970-01-01
          • 2011-01-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多