1

我有一个项目,我在第一个工作表上有以下单元格:

// Create and populate the first sheet (Page One) 
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setTitle('Page One');
$objPHPExcel->getActiveSheet()->setCellValue('B8', $city);
$objPHPExcel->getActiveSheet()->setCellValue('B9', $state);
$objPHPExcel->getActiveSheet()->setCellValue('B10', $zipCode);
$objPHPExcel->getActiveSheet()->setCellValue('B12', $SSN);
$objPHPExcel->getActiveSheet()->setCellValue('B13', $birthDate);

这似乎工作正常..并按预期显示数据。问题是,当我使用公式将这些字段组合到另一个工作表上时,它只会提取第一个。代码如下所示:

// Create and populate Sheet 2 (Page Two) 
$objPHPExcel->createSheet();
$objPHPExcel->setActiveSheetIndex(1);
$objPHPExcel->getActiveSheet()->setTitle("Page Two");
$objPHPExcel->getActiveSheet()->setCellValue('A5', "='Page One'!B8&\" \"&'Page One'!B9&\", \"&'Page One'!B10");
$objPHPExcel->getActiveSheet()->setCellValue('A6', "=\"SSN: \"&'Page One'!B12");
$objPHPExcel->getActiveSheet()->setCellValue('A7', "=\"DOB: \"&'Page One'!B13");

在第一页,变量都有效。在第二页 SSN 和 DOB 工作.. 但第一个字段 (A5) 不显示“城市,州邮政编码”,它只显示城市。

同样在 Excel 中,一旦导出,单元格中的数据不完整:

='Page One'!B8&" "

为什么无法添加其他 2 个字段?

提前致谢。

银虎

4

1 回答 1

0

我一直在调整并找到了一个可行的解决方案..单引号和双引号的组合很棘手,因为我想添加所需的转义双引号的“文本”,而工作表元素采用未转义的单引号,如下所示:

$objPHPExcel->getActiveSheet()->setCellValue('A5', "=CONCATENATE('Page One'!B8,\", \",'Page One'!B9,\" \",'Page One'!B10)");

这个解决方案对我来说很好。

于 2012-04-04T09:11:21.450 回答