需要将我文件的标题行格式化为格式化,当您在Excel电子表格中查看它显示为HEADER的单元格时,但当您在公式栏中单击该单元格时,它会显示“HEADER。”
我似乎只是在尝试所有事情而没有运气。无论我尝试什么,它都会在单元格中显示为'HEADER。但是,如果我在Excel中双击该单元格,它会自动生成我想要的方式,并将撇号从单元格中删除并将其留在公式栏中。 excel也会在我输入的新单元格中执行此操作'WHATEVER它只会在单元格中显示WHATEVER并且仍然在公式栏中显示'WHATEVER。
如何在使用phpExcel创建Excel文件时以这种方式显示?
这就是我现在插入值的方式。
$objPHPExcel
->getActiveSheet()
->setCellValueExplicit(
$currentColumn.$currentRow,
$data,
PHPExcel_Cell_DataType::TYPE_STRING
);
$ data只是一个以撇号开头的字符串。
答案 0 :(得分:4)
这实际上并不是PHPExcel支持的功能(令人难以置信的是,之前没有人曾要求它),尽管您可以通过在单元格样式中添加quotePrefix属性来修改代码来支持它(使用适当的getter和setter) ,然后修改编写器在将样式写入styles.xml文件(对于Excel2007)时将quotePrefix="1"
属性写入xf记录
修改强>
可能需要一些调整,但应该相当简单
类别/ PHPExcel / Style.php
添加$ _quotePrefix的新属性(类型为Boolean,默认为false)并为其提供getter setter方法。
类别/读卡器/ Excel2007.php
在第500行和第533行之间的某处,测试quotePrefix xf属性值;如果xf属性值为“1”,则调用$ objStyle(在第577行中定义)调用quotePrefix setter。
类/作家/ Excel2007的/ Style.php
如果$ pStyle quotePrefix属性为true,则修改xf writer(第399行)以编写值为“1”的quotePrefix属性