当我写了一个带有百分号的值时,excel会在该单元格的顶部显示一个绿色箭头。
这是我用来在特定单元格中写入值的代码。
worksheet.write(1, 46, '12%')
我试过这个:
worksheet.write_string(1, 46, '12%')
还有这个
worksheet.write_number(1, 46, '12%')
但我得到的结果是一样的。
我怎样才能摆脱绿色箭头呢?
谢谢!
发布于 2013-09-23 03:25:41
绿色箭头/三角形是Excel警告。这可能是关于数字存储为文本的警告。
避免这种情况的方法是写入不带百分比的数字,然后将其格式化为数字格式,以便显示百分比符号。在Excel中通常就是这样做的。
使用XlsxWriter,您可以执行以下操作:
import xlsxwriter
# Create a new workbook and add a worksheet.
workbook = xlsxwriter.Workbook('percent.xlsx')
worksheet = workbook.add_worksheet()
# Create a percentage number format.
percent_format = workbook.add_format({'num_format': '0%'})
# Write a number as a percentage.
worksheet.write('A1', .12, percent_format)
workbook.close()
发布于 2013-09-30 08:53:27
要做到这一点,一种方法是将单元格写为公式而不是字符串。例如,在Apache POI中,编写为
row.createCell(col++).setCellFormula("\"“+ myValue + "\"");
而不是row.createCell(col++).setCellValue(myValue);
我在VBA脚本中也是这样做的。如果这与你的编程场景不匹配,基本上,如果你进入Excel并输入'123,你会看到一个绿色的三角形,但如果你输入="123“,你就不会得到。这是你需要复制的行为。
当然,你可以直接关闭这个错误。File-Options-Formulas Numbers-格式化为文本或前面有撇号。但这是Excel设置,不是工作簿设置。如果您将工作簿发送给其他人,而他们打开了该选项,他们将看到那些讨厌的三角形。方程式的方式是他们追求一致性的方式。
https://stackoverflow.com/questions/18939273
复制相似问题