Php 导出到xlsx文件时,20位数字将显示15位数字,后跟5个零

Php 导出到xlsx文件时,20位数字将显示15位数字,后跟5个零,php,phpexcel,xlsx,Php,Phpexcel,Xlsx,导出到xlsx文件时,20位数字将显示15位数字,后跟5个零 当您在单元格中键入的数字超过15位时, Microsoft Excel将超过第十五位的任何数字更改为 零。例如,如果您尝试键入信用卡ID号 按以下格式 -####-####-####Excel将最后一位数字更改为零 Excel遵循IEEE 754规范中关于如何存储和 计算浮点数。因此,Excel只存储15个 数字中的有效数字,并在 第十五位改为零 要解决此问题,请将单元格格式化为文本,然后键入 数字。然后,该单元格最多可以显示1024

导出到xlsx文件时,20位数字将显示15位数字,后跟5个零
  • 当您在单元格中键入的数字超过15位时, Microsoft Excel将超过第十五位的任何数字更改为 零。例如,如果您尝试键入信用卡ID号 按以下格式 -####-####-####Excel将最后一位数字更改为零
  • Excel遵循IEEE 754规范中关于如何存储和 计算浮点数。因此,Excel只存储15个 数字中的有效数字,并在 第十五位改为零
  • 要解决此问题,请将单元格格式化为文本,然后键入 数字。然后,该单元格最多可以显示1024个字符

  • 更多信息

  • 此行为仅发生在用于 计算,即在格式化为数字的单元格中。在里面 格式为文本的单元格,最多可以键入32767 字符,其中Excel在屏幕上最多显示1024个字符 工作表

    因为自定义数字格式主要用于 数字,则无法创建存储更多信息的自定义数字格式 超过15位。例如,您不能使用以下格式来 将16个字符的信用卡ID存储为数字:

    -####-####-####如果在使用#####-#-#-#-#-#-#-#-#-#-#格式的单元格中键入数字111122223333444,将显示Excel 电池中的1111-2222-3333-4440。你的实际人数是多少 正在尝试存储的是1111222233334444,超过1 万亿。但由于这个数字太大,Excel会删除 最后一位(最低有效位),并在其位置放置一个零

    如果在格式为文本的单元格中键入数字,则所有 字符在键入时保留,因为Excel不会尝试 将信用卡id存储为数字,但保留为文本


  • 我认为您遇到了问题。我使用的是核心PHP和PHPExcel(2.1版)。我已经尝试过这个$objPHPExcel=new PHPExcel()$objPHPExcel->getDefaultStyle()->getNumberFormat()->setFormatCode(PHPExcel\u Style\u NumberFormat::FORMAT\u TEXT);实际上,我正在打印SIM卡号码,所以所有数字都同等重要。我在MySQL数据库中将这个数字存储为var char。使用phpexcel1.8,我试图导入xlsx文件。例:12345673021821300000