Laravel-excel: Excelμ—μ„œ 클릭 κ°€λŠ₯ν•œ ν•˜μ΄νΌλ§ν¬λ₯Ό μ‚½μž…ν•˜λŠ” 방법은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

에 λ§Œλ“  2016λ…„ 09μ›” 08일  Β·  16μ½”λ©˜νŠΈ  Β·  좜처: Maatwebsite/Laravel-Excel

μ‹œνŠΈμ— ν•˜μ΄νΌλ§ν¬λ₯Ό μ‚½μž…ν•˜λ €κ³  ν–ˆμœΌλ‚˜ ν…μŠ€νŠΈ ν˜•μ‹μΌ λΏμž…λ‹ˆλ‹€. 클릭 κ°€λŠ₯ν•œ ν•˜μ΄νΌλ§ν¬λ₯Ό μ‚½μž…ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•©λ‹ˆκΉŒ?

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

v3.*λ₯Ό μ‚¬μš©ν•  λ•Œ ν•˜μ΄νΌλ§ν¬λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<?php
namespace App\Exports;

use Excel;
use Maatwebsite\Excel\Sheet;
use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithHeadings;
use PhpOffice\PhpSpreadsheet\Cell\Hyperlink;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class CommentsExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize
{
    // ...
    public function custom()
    {
        Excel::extend(static::class, function (CommentsExport $export, Sheet $sheet) {
            /** <strong i="7">@var</strong> Worksheet $sheet */
            foreach ($sheet->getColumnIterator('H') as $row) {
                foreach ($row->getCellIterator() as $cell) {
                    if (str_contains($cell->getValue(), '://')) {
                        $cell->setHyperlink(new Hyperlink($cell->getValue(), '点击ζŸ₯ηœ‹ε›Ύη‰‡'));
                    }
                }
            }
        }, AfterSheet::class);
    }
    // ...
}

(new CommentsExport)->custom()); Excel::download(CommentsExport::class);

μœ μš©ν•œ μ†”λ£¨μ…˜μ΄μ§€λ§Œ λ¦¬νŒ©ν† λ§μ„ 톡해 더 μ΄ν•΄ν•˜κΈ° μ‰½κ²Œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<?php
namespace App\Exports;

use Excel;
use Maatwebsite\Excel\Sheet;

// add event support
use Maatwebsite\Excel\Concerns\WithEvents;

use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithHeadings;
use PhpOffice\PhpSpreadsheet\Cell\Hyperlink;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class CommentsExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize, WithEvents
{
    // ...
    /**
     * <strong i="13">@return</strong> array
     */
    public function registerEvents(): array
    {
        return [
            AfterSheet::class    => function(AfterSheet $event) {
                /** <strong i="14">@var</strong> Worksheet $sheet */
                foreach ($event->sheet->getColumnIterator('H') as $row) {
                    foreach ($row->getCellIterator() as $cell) {
                        if (str_contains($cell->getValue(), '://')) {
                            $cell->setHyperlink(new Hyperlink($cell->getValue(), 'Read'));

                             // Upd: Link styling added
                             $event->sheet->getStyle($cell->getCoordinate())->applyFromArray([
                                'font' => [
                                    'color' => ['rgb' => '0000FF'],
                                    'underline' => 'single'
                                ]
                            ]);
                        }
                    }
                }
            },
        ];
    }
    // ...
}

μ‚¬μš©λ²•:

Excel::download(CommentsExport::class);

λͺ¨λ“  16 λŒ“κΈ€

μ–΄λ–»κ²Œ μ‹œλ„ν–ˆλŠ”μ§€ λ³΄μ—¬μ£Όμ‹œκ³  μžλ™μœΌλ‘œ μ œκ³΅λ˜λŠ” github 이슈 ν…œν”Œλ¦Ώμ„ μ•Œλ €μ£Όμ„Έμš”.

   `$candidate; //Collection object from model
    foreach ($candidates as $key => $model) {
        if($model->grade == 'Z') {
            $model->grade="Reject";
        }
        $model->access_token=url('static-access/'.$model->access_token);`

access_token을 μ™„μ „ν•œ URL둜 κ΅μ²΄ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 그런 λ‹€μŒ μ»¬λ ‰μ…˜ 객체λ₯Ό μ•„λž˜μ™€ 같이 λ°°μ—΄λ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€.

    `foreach ($candidates as $candidate) {
        $candidatesArray[] = $candidate->toArray();
    }`

그런 λ‹€μŒ μ•„λž˜μ™€ 같이 λ°°μ—΄μ—μ„œ μ‹œνŠΈλ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

   `$sheet=$excel->sheet('sheet1', function($sheet) use ($candidatesArray,$jd) {
            $sheet->fromArray($candidatesArray, null, 'A1', false, false);
    });`

이 μŠ€ν¬λ¦½νŠΈμ—μ„œ μ‹€μ œλ‘œ ν•„μš”μ— 따라 데이터λ₯Ό λ‚΄λ³΄λ‚΄μ§€λ§Œ ν•˜μ΄νΌλ§ν¬λŠ” 클릭 κ°€λŠ₯ν•œ 링크가 μ•„λ‹Œ ν…μŠ€νŠΈ ν˜•μ‹μœΌλ‘œ λ‚΄λ³΄λƒ…λ‹ˆλ‹€. @patrickbrowers

PHPExcel κΈ°λ³Έ λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λ‹€μŒκ³Ό 같이 ν•΄μ•Ό ν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

$sheet->getCell('E26')
    ->getHyperlink()
    ->setUrl('http://examle.com/uploads/cv/' . $cellValue)
    ->setTooltip('Click here to access file');

https://github.com/PHPOffice/PHPExcel/blob/develop/Documentation/markdown/Overview/08-Recipes.md#change -a-cell-into-a-clickable-url

@patrickbrouwers κ°μ‚¬ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ setTooltip이 μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€(빈 μ…€).
적어도 "maatwebsite/excel": "~2.1.0" λ²„μ „μ˜ 경우.

setValueλ₯Ό μ‚¬μš©ν•˜μ—¬ 무언가λ₯Ό ν…μŠ€νŠΈλ‘œ ν‘œμ‹œν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

λ˜ν•œ λ‚΄ ν…μŠ€νŠΈλŠ” ID이며 숫자 ν•„λ“œ(E ν‘œκΈ°λ²• μ‚¬μš©)둜 ν•΄μ„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ λ‹€μŒμ„ μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

->setValueExplicit($fbId, PHPExcel_Cell_DataType::TYPE_STRING)

setTooltip λŠ” μ…€ μœ„λ‘œ 마우슀λ₯Ό κ°€μ Έκ°€λ©΄ ν‘œμ‹œλ˜λŠ” ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ‹€μ œλ‘œ μ‚¬μš©ν•˜κΈ° 전에 setValue λ˜λŠ” setValueExplicit λ₯Ό μˆ˜ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€.

Excel νŒŒμΌμ—μ„œ 링크가 μƒμ„±λ˜μ§€ μ•ŠλŠ” 이유λ₯Ό νŒŒμ•…ν•˜λŠ” 데 λ„ˆλ¬΄ 였랜 μ‹œκ°„μ„ λ³΄λƒˆμŠ΅λ‹ˆλ‹€. $sheet->cell("A1") 와 $sheet->getCell("A1") λŠ” 같지 μ•ŠμŠ΅λ‹ˆλ‹€. λ‹€μŒκ³Ό 같은 일을 ν•˜λŠ” κ²½μš°κ°€ λ§Žμ•˜μŠ΅λ‹ˆλ‹€.

$sheet->cell($cellLetter.$rowIndex, $url)
->getHyperlink()
->setUrl($url);

μž‘λ™ν•˜μ§€ μ•Šμ•˜μ§€λ§Œ Method [...] doesn't exist for ... 와 같은 였λ₯˜λ„ μƒμ„±ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. λ‚΄ μ½”λ“œλ₯Ό λ‹€μŒκ³Ό 같이 λ³€κ²½:

$sheet->getCell($cellLetter.$rowIndex) // A1, B2
->setValueExplicit("Click Here", \PHPExcel_Cell_DataType::TYPE_STRING);

$sheet->getStyle($cellLetter.$rowIndex)
->applyFromArray($urlStyle); // Blue, Bold

$sheet->getCell($cellLetter.$rowIndex)
->getHyperlink()
->setUrl($url);

λ‚΄ 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. 같은 문제둜 λ―Έλž˜μ— λˆ„κ΅°κ°€λ₯Ό λ„μšΈ 수 μžˆμŠ΅λ‹ˆλ‹€.

λ‚΄ 문제λ₯Ό ν•΄κ²°ν•˜μ‹­μ‹œμ˜€. 이것은 λ‚΄ μ½”λ“œμž…λ‹ˆλ‹€.

$sheet->getCell($cell) ->getHyperlink() ->setUrl($url); $sheet->getStyle($cell) ->applyFromArray(array( 'font' => array( 'color' => ['rgb' => '0000FF'], 'underline' => 'single' ) ));

screen shot 2017-07-19 at 2 47 40 pm

κ³ λ§ˆμ›Œ ν˜• @TimothyDLewis

@TimothyDLewis λ˜λŠ” @herarya μ‹œνŠΈλ₯Ό λ°˜λ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ 문제λ₯Ό μΌμœΌν‚¬ 수 μžˆμŠ΅λ‹ˆκΉŒ? - μ‚¬μš©ν•œ 전체 방법에 λŒ€ν•΄ μ½”λ“œλ₯Ό 쑰금 더 κ²Œμ‹œν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ? (예: $cellLetter.$rowIndex λ˜λŠ” $cell ? )

λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ 5개의 열이 μžˆλŠ” κ°„λ‹¨ν•œ 배열을 내보내고 μžˆμŠ΅λ‹ˆλ‹€. 이것은 ν•˜λ‚˜μ˜ μ‹œνŠΈμ΄κ³  머리글 행이 μžˆμŠ΅λ‹ˆλ‹€. 일단 그것을 작으면 λ¬Όλ‘  μž‘λ™ν•˜λŠ” λ‹€μŒ μ½”λ“œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

//$trademark = [an array of data with 5 columns and a header row];
Excel::create('trademarks', function($excel) use($trademarks) {
  $excel->sheet('trademarks', function($sheet) use($trademarks) {
     $sheet->fromArray($trademarks,null,'A1',false,false);
     //need to iterate over $sheet, get each row, and find column 1 in that row and set a URL
})->export('xlsx');

$sheetλ₯Ό λ°˜λ³΅ν•˜κ³  URL을 μ‚¬μš©ν•˜μ—¬ 각 ν–‰(첫 번째 ν–‰ μ œμ™Έ)μ—μ„œ ν•˜λ‚˜μ˜ 셀을 λ³€κ²½ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” μ΅œλŒ€ 3개의 κΉŠμ€ foreach 루프λ₯Ό μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€(κ²°κ³Όκ°€ 개체, λ°°μ—΄μ΄λΌλŠ” 였λ₯˜κ°€ 계속 λ°œμƒν•˜κ±°λ‚˜ "PHPExcel_Exception Invalid cell μ’Œν‘œ CREATOR in Cell.php(line 590)"이 ν‘œμ‹œλ©λ‹ˆλ‹€. $sheet- >each (각각 방법이 μ—†λ‹€λŠ” 였λ₯˜μ΄λ―€λ‘œ νŒŒμΌμ—μ„œ λ‘œλ“œν•  λ•Œλ§Œ μ‚¬μš©ν•  수 μžˆλŠ” λ°©λ²•μž„μ΄ λΆ„λͺ…함).

setUrl("μ‹œνŠΈ://'ν…ŒμŠ€νŠΈ'!A1")
κ·ΈλŸ¬λ‚˜ 파일 λ§ν¬λŠ” sheet://test!A1μž…λ‹ˆλ‹€.
μ™œ?

v3.*λ₯Ό μ‚¬μš©ν•  λ•Œ ν•˜μ΄νΌλ§ν¬λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<?php
namespace App\Exports;

use Excel;
use Maatwebsite\Excel\Sheet;
use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithHeadings;
use PhpOffice\PhpSpreadsheet\Cell\Hyperlink;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class CommentsExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize
{
    // ...
    public function custom()
    {
        Excel::extend(static::class, function (CommentsExport $export, Sheet $sheet) {
            /** <strong i="6">@var</strong> Worksheet $sheet */
            foreach ($sheet->getColumnIterator('H') as $row) {
                foreach ($row->getCellIterator() as $cell) {
                    if (str_contains($cell->getValue(), '://')) {
                        $cell->setHyperlink(new Hyperlink($cell->getValue(), '点击ζŸ₯ηœ‹ε›Ύη‰‡'));
                    }
                }
            }
        }, AfterSheet::class);
    }
    // ...
}
(new CommentsExport)->custom());
Excel::download(CommentsExport::class);

v3.*λ₯Ό μ‚¬μš©ν•  λ•Œ ν•˜μ΄νΌλ§ν¬λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<?php
namespace App\Exports;

use Excel;
use Maatwebsite\Excel\Sheet;
use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithHeadings;
use PhpOffice\PhpSpreadsheet\Cell\Hyperlink;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class CommentsExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize
{
    // ...
    public function custom()
    {
        Excel::extend(static::class, function (CommentsExport $export, Sheet $sheet) {
            /** <strong i="7">@var</strong> Worksheet $sheet */
            foreach ($sheet->getColumnIterator('H') as $row) {
                foreach ($row->getCellIterator() as $cell) {
                    if (str_contains($cell->getValue(), '://')) {
                        $cell->setHyperlink(new Hyperlink($cell->getValue(), '点击ζŸ₯ηœ‹ε›Ύη‰‡'));
                    }
                }
            }
        }, AfterSheet::class);
    }
    // ...
}

(new CommentsExport)->custom()); Excel::download(CommentsExport::class);

μœ μš©ν•œ μ†”λ£¨μ…˜μ΄μ§€λ§Œ λ¦¬νŒ©ν† λ§μ„ 톡해 더 μ΄ν•΄ν•˜κΈ° μ‰½κ²Œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<?php
namespace App\Exports;

use Excel;
use Maatwebsite\Excel\Sheet;

// add event support
use Maatwebsite\Excel\Concerns\WithEvents;

use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithHeadings;
use PhpOffice\PhpSpreadsheet\Cell\Hyperlink;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class CommentsExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize, WithEvents
{
    // ...
    /**
     * <strong i="13">@return</strong> array
     */
    public function registerEvents(): array
    {
        return [
            AfterSheet::class    => function(AfterSheet $event) {
                /** <strong i="14">@var</strong> Worksheet $sheet */
                foreach ($event->sheet->getColumnIterator('H') as $row) {
                    foreach ($row->getCellIterator() as $cell) {
                        if (str_contains($cell->getValue(), '://')) {
                            $cell->setHyperlink(new Hyperlink($cell->getValue(), 'Read'));

                             // Upd: Link styling added
                             $event->sheet->getStyle($cell->getCoordinate())->applyFromArray([
                                'font' => [
                                    'color' => ['rgb' => '0000FF'],
                                    'underline' => 'single'
                                ]
                            ]);
                        }
                    }
                }
            },
        ];
    }
    // ...
}

μ‚¬μš©λ²•:

Excel::download(CommentsExport::class);

당신이 λ§žμŠ΅λ‹ˆλ‹€. 이것은 λ‚˜λ³΄λ‹€ 더 λ‚˜μ€ μ†”λ£¨μ…˜μž…λ‹ˆλ‹€. @AlexMcDee

@TimothyDLewis λ˜λŠ” @herarya μ‹œνŠΈλ₯Ό λ°˜λ³΅ν•˜λŠ” 방법에 λŒ€ν•΄ 문제λ₯Ό μΌμœΌν‚¬ 수 μžˆμŠ΅λ‹ˆκΉŒ? - μ‚¬μš©ν•œ 전체 방법에 λŒ€ν•΄ μ½”λ“œλ₯Ό 쑰금 더 κ²Œμ‹œν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ? (예: $cellLetter.$rowIndex λ˜λŠ” $cell ? )

λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ 5개의 열이 μžˆλŠ” κ°„λ‹¨ν•œ 배열을 내보내고 μžˆμŠ΅λ‹ˆλ‹€. 이것은 ν•˜λ‚˜μ˜ μ‹œνŠΈμ΄κ³  머리글 행이 μžˆμŠ΅λ‹ˆλ‹€. 일단 그것을 작으면 λ¬Όλ‘  μž‘λ™ν•˜λŠ” λ‹€μŒ μ½”λ“œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

//$trademark = [an array of data with 5 columns and a header row];
Excel::create('trademarks', function($excel) use($trademarks) {
  $excel->sheet('trademarks', function($sheet) use($trademarks) {
     $sheet->fromArray($trademarks,null,'A1',false,false);
     //need to iterate over $sheet, get each row, and find column 1 in that row and set a URL
})->export('xlsx');

$sheetλ₯Ό λ°˜λ³΅ν•˜κ³  URL을 μ‚¬μš©ν•˜μ—¬ 각 ν–‰(첫 번째 ν–‰ μ œμ™Έ)μ—μ„œ ν•˜λ‚˜μ˜ 셀을 λ³€κ²½ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” μ΅œλŒ€ 3개의 κΉŠμ€ foreach 루프λ₯Ό μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€(κ²°κ³Όκ°€ 개체, λ°°μ—΄μ΄λΌλŠ” 였λ₯˜κ°€ 계속 λ°œμƒν•˜κ±°λ‚˜ "PHPExcel_Exception Invalid cell μ’Œν‘œ CREATOR in Cell.php(line 590)"이 ν‘œμ‹œλ©λ‹ˆλ‹€. $sheet- >each (각각 방법이 μ—†λ‹€λŠ” 였λ₯˜μ΄λ―€λ‘œ νŒŒμΌμ—μ„œ λ‘œλ“œν•  λ•Œλ§Œ μ‚¬μš©ν•  수 μžˆλŠ” λ°©λ²•μž„μ΄ λΆ„λͺ…함).

발견 ν›„ μ˜€λŠ˜μ„ μ–»μ—ˆμŠ΅λ‹ˆλ‹€ ....

https://stackoverflow.com/questions/41053636/laravel-excel-export-each-cell-style

μ–΄λ–»κ²Œ 였λ₯˜ λ©”μ‹œμ§€ μˆ˜μ§‘ λͺ¨λ“ˆμ„ λ°˜ν™˜ν•©λ‹ˆκΉŒ?

Googleμ—μ„œ 여기에 μ˜€λŠ” μ‚¬λžŒμ„ μœ„ν•œ κ°„λ‹¨ν•œ λ©”λͺ¨μž…λ‹ˆλ‹€. 제곡된 μ†”λ£¨μ…˜μ— λŒ€ν•΄ @mouyong @AlexMcDee μ—κ²Œ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

$sheet->getColumnIterator('H') λ₯Ό μ‚¬μš©ν•˜λŠ” λ™μ•ˆ 끝 μ—΄ $sheet->getColumnIterator('H', 'H') 인 두 번째 λ§€κ°œλ³€μˆ˜λ₯Ό μ§€μ •ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.

끝 열이 μ—†μœΌλ©΄ λ°˜λ³΅μžλŠ” λ§ˆμ§€λ§‰ μ—΄κΉŒμ§€ 각 열을 λ°˜λ³΅ν•©λ‹ˆλ‹€ .

ν‰μ†Œμ²˜λŸΌ λ§ˆμ§€λ§‰ 열이 μ•„λ‹Œ μ‹œνŠΈ 쀑간에 열에 λŒ€ν•œ ν•˜μ΄νΌλ§ν¬λ₯Ό λ§Œλ“€κ³ μž ν•  λ•Œ 이것을 μ•Œμ•„μ°¨λ ΈμŠ΅λ‹ˆλ‹€.

λ‚΄κ°€ λ”°λΌν•˜κ²Œ 된 또 λ‹€λ₯Έ μ ‘κ·Ό 방식은 Excel의 ν•˜μ΄νΌλ§ν¬ κΈ°λŠ₯을 μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄ λ™μΌν•œ ν…μŠ€νŠΈκ°€ μžˆλŠ” sheet2μ—μ„œ sheet1(λ²”μœ„ A1:A20)의 μ…€λ‘œ μ—°κ²°λ˜λŠ” ν•˜μ΄νΌλ§ν¬λ₯Ό λ§Œλ“€κ³  μ‹Άμ—ˆμŠ΅λ‹ˆλ‹€.
λ‚΄ μ‹œνŠΈμ—μ„œ 2
public function array(): array { $data = [ ['Id'], ]; foreach ($this->data as $id) { $idformula = '=HYPERLINK("#"&CELL("address", INDEX(Sheet1!A1:A20, MATCH("'.$id.'",Sheet1!A1:A20,0), 1)),"'.$id.'")'; array_push($data, [$idformula]); } return $data; }
μŠ€νƒ€μΌμ„ μ§€μ •ν•˜λ €λ©΄:
public function styles(Worksheet $sheet) { return [ 'A' => ['font' => [ 'color' => ['rgb' => '0000FF'], 'underline' => 'single', ]], ]; }

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰