getActiveSheet(); $fileName = "sample.xlsx"; //ファイル名を設定 $sheet->setTitle("シートタイトル"); //シートタイトル名を設定 /* 値とセルを指定 */ $sheet->setCellValue('A1', '↑A列:幅14'); $sheet->setCellValue('A2', '←2行:高さ27'); $sheet->setCellValue('B1', 'テキスト'); $sheet->setCellValue('B3', '左寄せ'); $sheet->setCellValue('B5', '上寄せ'); $sheet->setCellValue('B7', 'テキストの折り返し'); $sheet->setCellValue('B13', 'セル(B13,C13,D13)の結合'); $sheet->setCellValue('B15', 'B15からD15まで枠線を表示'); $sheet->setCellValue('B17', '枠線全て'); $sheet->setCellValue('B22', '内側のみ'); $sheet->setCellValue('B27', '縦線のみ'); $sheet->setCellValue('B32', '横線のみ'); $sheet->setCellValue('C1', '文字色'); $sheet->setCellValue('C3', '中央(横)'); $sheet->setCellValue('C5', '中央(縦)'); $sheet->setCellValue('D1', '背景色'); $sheet->setCellValue('D3', '右寄せ'); $sheet->setCellValue('D5', '下寄せ'); $sheet->setCellValue('E1', '文字サイズ'); $sheet->setCellValue('F3', '枠線(細)'); $sheet->setCellValue('F5', '枠線(太)'); $sheet->setCellValue('F7', '左線'); $sheet->setCellValue('F9', '上線'); $sheet->setCellValue('F11', '右線'); $sheet->setCellValue('F13', '下線'); $sheet->setCellValue('F15', '枠線赤'); $sheet->setCellValue('F17', '点線'); $sheet->setCellValue('F19', '長い点線'); $sheet->setCellValue('F21', '二重線'); $sheet->setCellValue('F23', '細線'); $sheet->setCellValue('F25', '太線'); /* 配列の形で値を設定 */ $dataList = [ ['配列の形で値を設定'], [NULL, 1, 2], [3, 4, 5], ]; $sheet->fromArray($dataList, NULL, 'B9', true); //指定したセル(B9)を起点に値を挿入する /* ------------------ */ /* 列の横幅を設定 */ $sheet->getColumnDimension('A')->setWidth(14); //列(A)の幅を14に設定 $sheet->getColumnDimension('A')->setAutosize(false); //true:列(A)の幅を自動調整, false:自動調整しない /* 行の縦幅を設定 */ $sheet->getRowDimension('2')->setRowHeight(27); //行(2)の高さを27に設定 /* 枠線を設定 */ $sheet->setShowGridlines(true); //true:枠線を表示, false:非表示 $sheet->getStyle('B15:D15')->getBorders()->getOutline()->setBorderStyle('thin'); //B15からD15まで枠線を表示 $sheet->getStyle('B18:D20')->getBorders()->getAllborders()->setBorderStyle('thin'); //getAllborders():全て $sheet->getStyle('B23:D25')->getBorders()->getInside()->setBorderStyle('thin'); //getInside():内側のみ $sheet->getStyle('B28:D30')->getBorders()->getVertical()->setBorderStyle('thin'); //getVertical():縦線のみ $sheet->getStyle('B33:D35')->getBorders()->getHorizontal()->setBorderStyle('thin'); //getHorizontal():横線のみ $sheet->getStyle('F3')->getBorders()->getOutline()->setBorderStyle('thin'); //thin:通常線 $sheet->getStyle('F5')->getBorders()->getOutline()->setBorderStyle('thick'); //thick:mediumより太線 $sheet->getStyle('F7')->getBorders()->getLeft()->setBorderStyle('thin'); //getLeft():左線 $sheet->getStyle('F9')->getBorders()->getTop()->setBorderStyle('thin'); //getTop():上線 $sheet->getStyle('F11')->getBorders()->getRight()->setBorderStyle('thin'); //getRight():右線 $sheet->getStyle('F13')->getBorders()->getBottom()->setBorderStyle('thin'); //getBottom():下線 $sheet->getStyle('F15')->getBorders()->getOutline()->setBorderStyle('thin')->getColor()->setARGB('ff0000'); //枠線の色を赤に設定 $sheet->getStyle('F17')->getBorders()->getOutline()->setBorderStyle('dotted'); //dotted:点線 $sheet->getStyle('F19')->getBorders()->getOutline()->setBorderStyle('dashed'); //dashed:長い点線 $sheet->getStyle('F21')->getBorders()->getOutline()->setBorderStyle('double'); //double:二重線 $sheet->getStyle('F23')->getBorders()->getOutline()->setBorderStyle('hair'); //hair:細線 $sheet->getStyle('F25')->getBorders()->getOutline()->setBorderStyle('medium'); //medium:太線 /* テキストの配置を設定 */ $sheet->getStyle('B3')->getAlignment()->setHorizontal('left'); //left:左寄せ $sheet->getStyle('B5')->getAlignment()->setVertical('top'); //top:上寄せ $sheet->getStyle('C3')->getAlignment()->setHorizontal('center'); //center:中央寄せ(横) $sheet->getStyle('C5')->getAlignment()->setVertical('center'); //top:中央寄せ(縦) $sheet->getStyle('D3')->getAlignment()->setHorizontal('right'); //right:右寄せ $sheet->getStyle('D5')->getAlignment()->setVertical('bottom'); //top:下寄せ /* テキストの折り返しを設定 */ $sheet->getStyle('B7')->getAlignment()->setWrapText(true); /* セルを連結 */ $sheet->mergeCells('B13:D13'); /* 文字色を設定 */ $sheet->getStyle('C1')->getFont()->getColor()->setARGB('ff0000'); //C1セルの文字色を赤に設定 /* 背景色を設定 */ $sheet->getStyle('D1')->getFill()->setFillType('solid')->getStartColor()->setARGB('00ffff'); //D1セルの背景色を水色に設定 /* 文字サイズを設定 */ $sheet->getStyle('E1')->getFont()->setSize(18); //E1セルの文字サイズを18に設定 /* 改行のある文字を入力 */ $sheet->getStyle('C7')->getAlignment()->setWrapText(true); //setWrapTextをtrueにした後に、setCellValueで値をセット。 $sheet->setCellValue('C7', "改行の\nある文字を\n入力"); /* -------------------- */ /* 印刷範囲の設定 */ $sheet->getPageSetup()->setPrintArea("A1:I42"); /* Excelファイルのダウンロード */ header("Content-Description: File Transfer"); header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //EXCELファイル( .xlsx OFFICE 2007以降) header('Content-Disposition: attachment; filename="'.$fileName.'"'); //ダウンロード時のファイル名をセット header('Cache-Control: no-store, max-age=0'); //新しいリソースのキャッシュを防止、キャッシュのクリア ob_end_clean();//バッファ消去 $writer = new Xlsx($spreadsheet); $writer->save('php://output'); ?>