3
我正在使用现有的Excel文件,第一行包含纯文本,稍后将用作模板。然后,我将一些列格式更改为货币,会计,日期... e.t.c。现在我在phpExcel中加载这个文件,并将数据从我的数据库填充到这个文件并用一个新名称保存。但在保存的文件中,新创建的行中的所有单元格似乎都标记为general
,尽管原始纯文本行似乎仍具有指定的正确格式。与phpexcel如何设置列格式?
我的代码:
$xl_tmplt = ((isset($_REQUEST['excel_template']) && $_REQUEST['excel_template'] != "")
? $_REQUEST['excel_template']
: "report_tab1.xlsx");
require_once 'includes/classes/PHPExcel/PHPExcel.php';
$cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_phpTemp;
$cacheSettings = array('memoryCacheSize' => '8MB');
PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);
$tmp_workbook = PHPExcel_IOFactory::load($tmp_folder_path . '/templates/' . $xl_tmplt);
$tmp_workbook->setActiveSheetIndex(0);
$sheet = $tmp_workbook->getActiveSheet();
$sheet->fromArray($arr, '', 'A2');
$objWriter = PHPExcel_IOFactory::createWriter($tmp_workbook, 'Excel2007');
$objWriter->save($tmp_folder_path . "output/$filename");
$result['type'] = "success";
$result['msg'] = "The file was successfully created.";
任何想法,我怎么能在Excel加载使用预定义的列格式文件,并用它来生成一个新的Excel?或者在生成过程中更改/设置列或单元格区域的格式? PS:我不太擅长excel,所以我可能会以错误的方式设置列格式。基本上,我点击了选择列的列字母,然后在上面的下拉列表中更改了格式。如果这是错误的,请让我知道。
谢谢,但我并不是在谈论单元格的“样式”,我想改变单元格的格式。 – Bluemagica
我已经更新了PHPExcel支持的可能格式的答案(根据我的知识) – Amit
@Amit - 无法理解单元格格式和单元格样式之间的区别 –