使用xlsxwriter python进行字符串验证
我正在尝试将验证放在excel文件上。I字段应仅接受字符或带有“\”符号的字符。以下代码仅重新划分用户输入长度超过10的值使用xlsxwriter python进行字符串验证,python,django,validation,xlsxwriter,Python,Django,Validation,Xlsxwriter,我正在尝试将验证放在excel文件上。I字段应仅接受字符或带有“\”符号的字符。以下代码仅重新划分用户输入长度超过10的值 import xlsxwriter wb = xlsxwriter.Workbook('staff.xlsx') ws = workbook.add_worksheet() ws.data_validation(1, 1, 10, 0, {'validate': 'length', 'input
import xlsxwriter
wb = xlsxwriter.Workbook('staff.xlsx')
ws = workbook.add_worksheet()
ws.data_validation(1, 1, 10, 0,
{'validate': 'length',
'input_title': 'Enter value',
'criteria': '<',
'value': firstname_max_length,
'error_message': 'Max Length is{0}'.format(10)})
导入xlsxwriter
wb=xlsxwriter.Workbook('staff.xlsx')
ws=工作簿。添加工作表()
ws.data_验证(1,1,10,0,
{'validate':'length',
“输入标题”:“输入值”,
“条件”:“第一步是确定如何在Excel中进行数据验证,然后将其传输到XlsxWriter
这可能需要“自定义”数据验证,如下所示:
import xlsxwriter
wb = xlsxwriter.Workbook('staff.xlsx')
ws = wb.add_worksheet()
ws.data_validation('A1:C3',
{'validate': 'custom',
'value': '=ISTEXT(A1)',
'input_title': 'Enter a non numeric value',
'error_message': 'Enter a string not a number'})
wb.close()
输出:
但是,这并不完全符合您的要求。仍然可以添加非字符数据,甚至可以添加屏幕截图中显示的字符串,如123h
。因此,您需要找出一个在Excel中可用的公式,然后将其应用于XlsxWriter。我在谷歌上搜索了一个示例,但没有找到任何有效的方法。我尝试了code,但它为每个输入值提供错误消息。即使我只输入字符,也不例外。请告诉我哪里做错了?这是我尝试的-ws.data_验证('A1:A20',{'validate':'custom','value':'=ISTEXT(A1)“,”输入标题“:”输入非数值“,”错误消息“:”输入字符串而不是数字“})我不知道为什么它对您不起作用。上面的屏幕截图显示了指定范围内的有效值以及无效值和无效值的错误消息。因此它显然起作用了。您使用的Excel版本是什么?它在Windows上工作正常,但在linux上不起作用。请提供帮助。什么是“不起作用”.程序或输出?如果是输出,它在哪里不起作用?如果答案不是Excel版本,那么您确定应用程序支持此功能吗?验证在linux系统上不起作用,但如果windows系统上使用相同的文件,验证在那里可以正常工作。