whjl1 2024-03-09 14:21 采纳率: 100%
浏览 137
已结题

“getCellByColumnAndRow()”方法报错

PHP使用PhpSpreadsheet操作Excel实例详解-CSDN博客
https://blog.csdn.net/withoutfear/article/details/127958844
Fatal error: Uncaught Error: Call to undefined method PhpOffice\PhpSpreadsheet\Worksheet\Worksheet::**getCellByColumnAndRow()**??
我参考很多网页,使用“$cell = $sheet->getCellByColumnAndRow(1,1);”,报错“ Fatal error: Uncaught Error: Call to undefined method PhpOffice\PhpSpreadsheet\Worksheet\Worksheet::**getCellByColumnAndRow()**”

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-09 14:21
    关注

    引自免费微信小程序:皆我百晓生

    在 PhpOffice\PhpSpreadsheet 中,确实没有 Worksheet 类中的 getCellByColumnAndRow() 方法。但是,你可以使用 getCell() 方法来实现相同的目的。下面是一个示例代码片段,用于获取指定列和行的单元格:

    use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
    
    // 假设 $spreadsheet 是你的 Spreadsheet 对象,$sheetIndex 是你要操作的工作表索引
    $worksheet = $spreadsheet->getActiveSheet();
    // 获取 A1 单元格(即第一列第一行)
    $cell = $worksheet->getCell('A1');
    
    // 或者,如果你想根据列号和行号获取单元格,可以这样做:
    $columnIndex = 1; // 第一列
    $rowIndex = 1;    // 第一行
    $cell = $worksheet->getCellByColumnAndRow($columnIndex, $rowIndex); // 虽然这个方法不存在,但你可以这样实现
    
    // 实际上应该这样写:
    $cell = $worksheet->getCell(\PhpOffice\PhpSpreadsheet\Cell\Coordinate::stringFromColumnIndex($columnIndex) . $rowIndex);
    
    // 然后你可以通过 `$cell` 获取或设置单元格内容
    $value = $cell->getValue();
    

    上面的代码中,我们用 \PhpOffice\PhpSpreadsheet\Cell\Coordinate::stringFromColumnIndex() 方法将列号转换为字母表示的列名,然后与行号拼接成单元格地址。例如,对于第一列第一行,它会返回 'A1'。这样你就可以正确地调用 getCell() 方法了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月17日
  • 已采纳回答 3月10日
  • 创建了问题 3月9日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部