สอบถามส่งออกเป็น Excel ในปีงบ เลือกช่วง วัน เดือน ปี
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามส่งออกเป็น Excel ในปีงบ เลือกช่วง วัน เดือน ปี
สอบถามส่งออกเป็น Excel ในปีงบ เลือกช่วง วัน เดือน ปี
Copy
ผลรวมออก แต่ในช่องแต่ละเดือนไม่ออกมีผิดพลาด ตรงไหนคับ
<?php
include 'conf2.inc.php';
require_once 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';
if (empty($_GET["repno_y"])||empty($_GET["repno_m"])) {
echo "ไม่มีหน้าที่ต้องการ";
echo "<meta http-equiv='refresh' content='3; url=index.php'>";
}else{
$excel = new PHPExcel();
$excel->setActiveSheetIndex(0);
$dmy1 = $_GET["repno_y"];
$dmy2 = $_GET["repno_m"];
$sql = "SELECT a.rm_group_id as a,a.rm_group_name as b,
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=10 and YEAR(date)=$dmy1) AS 'c',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=11 and YEAR(date)=$dmy1) AS 'd',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=12 and YEAR(date)=$dmy1) AS 'e',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=1 and YEAR(date)=$dmy2) AS 'f',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=2 and YEAR(date)=$dmy2) AS 'g',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=3 and YEAR(date)=$dmy2) AS 'h',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=4 and YEAR(date)=$dmy2) AS 'i',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=5 and YEAR(date)=$dmy2) AS 'j',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=6 and YEAR(date)=$dmy2) AS 'k',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=7 and YEAR(date)=$dmy2) AS 'l',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=8 and YEAR(date)=$dmy2) AS 'm',
(select count(*) from rm_report where rm_group=a.rm_group_id and MONTH(date)=9 and YEAR(date)=$dmy2) AS 'n',
(select count(*) from rm_report where rm_group=a.rm_group_id and date BETWEEN '$dmy1' AND '$dmy2') AS 'o'
from rm_group a";
mysqli_set_charset($connect,"utf8");
$query = mysqli_query($connect, $sql);
$row = 4;
while ($data = mysqli_fetch_object($query)) {
$excel->getActiveSheet()
->setCellValue('A'.$row , $data->a)
->setCellValue('B'.$row , $data->b)
->setCellValue('C'.$row , $data->c)
->setCellValue('D'.$row , $data->d)
->setCellValue('E'.$row , $data->e)
->setCellValue('F'.$row , $data->f)
->setCellValue('G'.$row , $data->g)
->setCellValue('H'.$row , $data->h)
->setCellValue('I'.$row , $data->i)
->setCellValue('J'.$row , $data->j)
->setCellValue('K'.$row , $data->k)
->setCellValue('L'.$row , $data->l)
->setCellValue('M'.$row , $data->m)
->setCellValue('N'.$row , $data->n)
->setCellValue('O'.$row , $data->o);
$row++;
} // 60
// กำหนดขนาดของ column
$excel->getActiveSheet()->getColumnDimension('A')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('B')->setWidth(60);
$excel->getActiveSheet()->getColumnDimension('C')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('D')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('E')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('F')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('G')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('H')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('I')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('J')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('K')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('L')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('M')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('N')->setWidth(5);
$excel->getActiveSheet()->getColumnDimension('O')->setWidth(10);
$excel->getActiveSheet()
->setCellValue('A1','รายงานโปรแกรมความเสี่ยง ตั้งแต่วันที่'.($dmy1). ' ถึง '.($dmy2))
->setCellValue('A3','รหัส')
->setCellValue('B3','โปรแกรมความเสี่ยงด้าน')
->setCellValue('C3','ต.ค.')
->setCellValue('D3','พ.ย.')
->setCellValue('E3','ธ.ค.')
->setCellValue('F3','ม.ค.')
->setCellValue('G3','ก.พ.')
->setCellValue('H3','มี.ค.')
->setCellValue('I3','เม.ย.')
->setCellValue('J3','พ.ค.')
->setCellValue('K3','มิ.ย.')
->setCellValue('L3','ก.ค.')
->setCellValue('M3','ส.ค.')
->setCellValue('N3','ก.ย.')
->setCellValue('O3','รวม');
// จัดกลาง
$excel->getActiveSheet()->getStyle('A3:O3')->getAlignment()->setHorizontal('center');
// ตีเส้นตาราง
$excel->getActiveSheet()->getStyle('A3:O3'.($row-1))->applyFromArray(
array(
'borders' => array(
'allborders' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN
)
)
)
);
// footer
// $excel->getActiveSheet()->getStyle('G'.($row).':K'.($row))->applyFromArray(
// array(
// 'borders' => array(
// 'allborders' => array(
// 'style' => PHPExcel_Style_Border::BORDER_THIN
// )
// )
// )
// );
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename="รายงานโปรแกรมความเสี่ยงแยกรายเดือน.xlsx"'); //
header('Cache-Control: max-age=0');
$file = PHPExcel_IOFactory::createWriter($excel,'Excel2007');
$file->save('php://output');
mysqli_close($connect);
} // 14
?>
คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา
โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ