PHPExcel 按值搜索单元格

标签 php phpexcel

我想知道如何帮助解决此类问题。 比方说,我有一个包含此类信息的 excel(它可能包含更多信息):

**Country**            **Currency**
Germany                 EUR    
USA                     USD    
Russia                  RUB

我正在输入“美国”表单,我想从 excel 中查看结果美元。 PHP 中是否有某种函数允许在 excel 中搜索值?

或者至少,如果存在这样的函数,它返回在哪个单元格(例如 B2)中存在这样的值?

最佳答案

PHPExcel 没有内置任何东西来进行搜索,但是基于迭代器自己编写一些东西非常简单....看看 /中的 28iterator.php示例

$foundInCells = array();
$searchValue = 'USA';
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
    $ws = $worksheet->getTitle();
    foreach ($worksheet->getRowIterator() as $row) {
        $cellIterator = $row->getCellIterator();
        $cellIterator->setIterateOnlyExistingCells(true);
        foreach ($cellIterator as $cell) {
            if ($cell->getValue() == $searchValue) {
                $foundInCells[] = $ws . '!' . $cell->getCoordinate();
            }
        }
    }
}
var_dump($foundInCells);

当然,如果您只想搜索特定工作表中的特定列,则可以大大简化这一过程,例如使用 rangeToArray(),然后使用标准 PHP 数组函数搜索数组。

关于PHPExcel 按值搜索单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28045016/

相关文章:

php - 如何将时间增加 15 分钟

PHPExcel : Error while reading cells

java - 如何自动生成变音元音表?

Windows 上的 PHP_BINDIR 不正确?

phpExcel xls 到 csv 的转换正在将日期更改为原始日期

php - 如何使用 PHPExcel 从大型 Excel 文件 (27MB+) 读取大型工作表?

php - Codeigniter 中的错误 PHPExcel

templates - 是否可以创建新的工作表并将文件中的数据添加到其中?

php - appcfg.py : error: Error parsing app\app. yaml:无法将值 'php55' 分配给属性 'runtime'

php - MySQL可以同时选择和设置吗?