首页 > 编程语言 >PHP 导出 Excel 报错: Formula Error: An unexpected error occurred

PHP 导出 Excel 报错: Formula Error: An unexpected error occurred

时间:2023-09-21 12:11:44浏览次数:43  
标签:unexpected 单元格 Excel occurred value 报错 error Formula

1. 问题描述
一个项目中用到了需要将用户手机号导出到 Excel ,最初写完测试是正常的,如下图所示

 

在后来的某一天,导出手机号突然出现了报错,如下图所示

 

通过提示我们将问题定位在了 B 列 4867 行。

这是因为在 excel 中,单元格中的值如果是以 “=” 开头,则说明这个单元格是根据其他单元格的值算出来的,“=” 后面必须跟着一个合法的表达式。所以,解决方案就是这个单元格的值不让它以 “=” 开头

# Formula Error: An unexpected error occurred 公式错误:发生意外错误
{"code":0,"msg":"用户手机号!B4867 -> Formula Error: An unexpected error occurred"}
1
2
2. 解决方法
找到将值写入到单元格的那行代码,修改前:

$sheet->setCellValueByColumnAndRow(2, $start, $value);
1
修改后:

if ( $value && strpos($value, '=') === 0 ) {
// 在 = 前面加个单引号
$value = "'" . $value;
}
$sheet->setCellValueByColumnAndRow(2, $start, $value);
1
2
3
4
5
现在 Excel 表格就可以正常导出了


————————————————
版权声明:本文为CSDN博主「辰风沐阳」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40994734/article/details/124120559

标签:unexpected,单元格,Excel,occurred,value,报错,error,Formula
From: https://www.cnblogs.com/rxbook/p/17719638.html

相关文章

  • kubernetes初始化时报错:CRI v1 runtime API is not implemented for endpoint \"unix
    近日,进行Kubernetes初始化时报错如下:[root@k8s-master~]#kubeadminit--kubernetes-version=v1.28.2--pod-network-cidr=10.244.0.0/16--service-cidr=10.96.0.0/12--apiserver-advertise-address=10.10.10.185[init]UsingKubernetesversion:v1.28.2[preflight]Runn......
  • 关于ResultSet.last()方法报错问题的解决
    今天看到这样的一个文章,感觉写的挺好,就把它拿过来收藏一下,也与大家分享一下。有位朋友在使用ResultSet.last时,遇到了这样的问题java.sql.SQLException:[Microsoft][SQLServer2000DriverforJDBC]Unsupportedmethod:ResultSet.last。 在不想再次通过查询数据库得到记录条数的......
  • 关于hive中使用group by报错的问题的解决
    问题描述+问题解决在我在hive数据库中使用groupby的函数时,如果在我们决定显示出来的字段名中有非聚合的字段(即字段名为原生字段名,并没有加什么SUM等聚合函数),那么,我们就必须在groupby后面引用上这个非聚合字段,否则就会报错;同时,在我们写数据到新的数据表中时,一定要保证我们所......
  • mongo报错state should be: open
    场景,重新发布项目报错错误信息如下:java.lang.IllegalStateException:stateshouldbe:openatcom.mongodb.assertions.Assertions.isTrue(Assertions.java:79)atcom.mongodb.internal.connection.BaseCluster.getDescription(BaseCluster.java:162)......
  • springBoot 启动报错: If you want an embedded database (H2, HSQL or Derby), please
    原因其实这个异常在SpringBoot中是一个比较常见的异常,一般是因为SpringBoot自动配置时,检测到我们添加了MySQL、Oracle、Mybatis等和数据库相关的依赖包,结果我们的配置文件中却没有添加数据库相关的配置,比如:spring:datasource:driver-class-name:com.mysql.jdbc.Driver......
  • IIS报错:HTTP 错误 404.17 - Not Found
    新建处理程序映射 *.svc%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dllsvc-ISAPI-4.0*.svc%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dllsvc-ISAPI-4.0-64......
  • IIS报错:HTTP 错误 404.2 - Not Found 由于Web服务器上的”ISAPI和CGI限制”列表设置,无
     解决方法:  ......
  • GitLab报错502——Whoops, GitLab is taking too much time to respond 502 错误
    一、错误页面错误原因:原来默认配置的8080端口号被其他应用占用冲突了,只需换成其他新的端口号就可以了二、修复步骤1.首先vim /etc/gitlab/gitlab.rb打开配置文件2.修改配置找到如下配置项,原来是用#注释的,把前面的#去掉取消注释,原来的默认端口号应该是8080,改成你自己想要的端口号......
  • yourls安装-报错AbstractExtendedPdo.php
    1`Fatalerror:UncaughtPDOException:SQLSTATE[HY000]:Generalerror:3Errorwritingfile'./example_com/yourls_url.frm'(Errcode:28)in/www/wwwroot/example.com/includes/vendor/aura/sql/src/AbstractExtendedPdo.php:565Stacktrace:#0/www/w......
  • 2023-9-20交易日志报错排查分析
    1、下单失败:名词解释:NOTIONAL名义价值来源:https://binance-docs.github.io/apidocs/spot/cn/#cc81fff589名义价值过滤器(NOTIONAL)定义了订单在一个交易对上可以下单的名义价值区间.applyMinToMarket定义了minNotional是否适用于市价单(MARKET)applyMaxToMarket定义了......