【问题标题】:Laravel Maatwebsite\Excel exportLaravel Maat 网站\Excel 导出
【发布时间】:2020-07-18 14:02:09
【问题描述】:

我在使用 laravel maatwebsite excel 导出到 excel 时遇到问题,我可以导出,但它将全部导出。我的问题是,我想在每个单元格中分配结果。示例:A1 = 机构名称,B1 = 部门名称,A3:E3 = 帐户标题(合并),A5 - E5 = 表头,A6 - E6 = foreach 数据的结果。简而言之,我想将结果分配到特定单元格中,以制作格式化报告。我尝试在这里搜索,但我没有找到解释或显示如何将导出的结果放入特定 excel 单元格的结果

例子:

A1:E1 = Company Name A2:E2 = Department A3:E3 = Company Address A5 = Unit B5 = Item C5 = Description D5 = Quantity E5 = Date Issued

$ews->setCellValue('a1', 'Company name'); 
$ews->setCellValue('b1', 'Company Division');
$ews->setCellValue('A3:E3', 'Account Title');

【问题讨论】:

  • 你所说的“全系列”是什么意思?我在给定的代码中没有看到任何类型的系列
  • 我的意思是“所有系列”是我数据库中的所有记录都已下载并从单元格 A1 开始,依此类推...我只想下载一条记录并格式化为我们的报告模板,例如我综上所述。我想要结果作为给出的代码,例如。从我的数据库列中,“公司名称”应该放在单元格 A1 中,部门应该放在 B1 中,帐户标题应该放在 A3 中,其他数据应该放在 excel 中的特定单元格中
  • 我想像这样指定结果: $sheet->cell('A1', function($cell) { $cells->setFontWeight('bold'); });
  • 请通过编辑添加对问题的所有说明。这也应该涵盖究竟问题是什么
  • 解决,我使用 PHPOffice/电子表格在 excel 中导出我想要的输出视图

标签: php excel laravel-5 export-to-excel maatwebsite-excel


【解决方案1】:

- 您可以通过仅选择您需要的记录来限制查询的记录,例如:

$Report = Invoice::select('id', 'pickup', 'dropoff', 'pickup_date', 'created_at', 'updated_at')->whereBetween('created_at', [$from, $to])->get();

- 为了指定单元格的范围,您可以通过在我的示例中的导出文件中注册事件来执行此操作,我选择了范围 $cellRange = 'A1:AA1';:

public function registerEvents(): array
{
    return [
        AfterSheet::class    => function(AfterSheet $event) {
            $cellRange = 'A1:AA1';
            $event->sheet->getDelegate()->getStyle($cellRange)->getFont()->setSize(14);
        },
    ];
}

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-25
    • 1970-01-01
    • 2018-01-22
    • 2023-02-01
    • 1970-01-01
    • 2021-09-15
    • 2015-11-24
    • 1970-01-01
    相关资源
    最近更新 更多