我正在尝试使用 Find 命令在 excel 表中找到确切的字符串。我成功地找到了具有字符串的单元格,这里的问题是我无法找到与给定确切字符串匹配的单元格。
场景解释如下:
场景:具有以下值的 Excel 工作表。
C1(值):ABCD
D1(值):ABCDEFABCD
输入搜索字符串:ABCD
预期值:3(C)
输出:4(D)
下面是我使用的代码:
use Win32::OLE;
use Win32::OLE qw(in with);
use Win32::OLE::Variant;
use Win32::OLE::Const 'Microsoft Excel';
$Excel = Win32::OLE->new('Excel.Application');
$Excel->{'Visible'} = 0; #0 is hidden, 1 is visible
$Excel->{DisplayAlerts}=0; #0 is hide alerts
# Open File and Worksheet
my $Book = $Excel->Workbooks->Open ('D:\\all_files.csv'); # open Excel file
$Sheet = $Book->Worksheets(1);
# Find Last Column and Row
$search_string = "ABCD";
my $Row_index = $Sheet->UsedRange->Find({What=>$search_string,
SearchDirection=>xlPrevious,
SearchOrder=>xlByRows})->{Row};
$Book->Close();
$Excel->Quit();
请帮助我克服这个困难。提前致谢。