summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristiano Lopes <e.mail@cristianolopes.eu>2017-09-11 12:47:51 +0100
committerCristiano Lopes <e.mail@cristianolopes.eu>2017-09-11 12:47:51 +0100
commit77469ef6556f356e93ed37e5e10b8ccccc2fbb46 (patch)
tree1dc5e81e8bda6fffa4883f08d9b64d3fc95f237c
parente21676d3bd3b690ec9a987bd212d8af625606934 (diff)
downloadtablib-77469ef6556f356e93ed37e5e10b8ccccc2fbb46.tar.gz
Delegate type coercion to openpyxl
-rw-r--r--tablib/formats/_xlsx.py20
1 files changed, 8 insertions, 12 deletions
diff --git a/tablib/formats/_xlsx.py b/tablib/formats/_xlsx.py
index 411e0fc..0fb42db 100644
--- a/tablib/formats/_xlsx.py
+++ b/tablib/formats/_xlsx.py
@@ -120,33 +120,29 @@ def dset_sheet(dataset, ws, freeze_panes=True):
if (row_number == 1) and dataset.headers:
# ws.cell('%s%s'%(col_idx, row_number)).value = unicode(
# '%s' % col, errors='ignore')
- ws.cell('%s%s'%(col_idx, row_number)).value = unicode(col)
style = ws.get_style('%s%s' % (col_idx, row_number))
style.font.bold = True
if freeze_panes:
# As already done in #53, but after Merge lost:
# Export Freeze only after first Line
ws.freeze_panes = 'A2'
-
+
# bold separators
elif len(row) < dataset.width:
- ws.cell('%s%s'%(col_idx, row_number)).value = unicode(
- '%s' % col, errors='ignore')
style = ws.get_style('%s%s' % (col_idx, row_number))
style.font.bold = True
# wrap the rest
else:
try:
- if '\n' in col:
- ws.cell('%s%s'%(col_idx, row_number)).value = unicode(
- '%s' % col, errors='ignore')
+ str_col_value = unicode(col)
+ except TypeError:
+ str_col_value = ''
+
+ if '\n' in str_col_value:
style = ws.get_style('%s%s' % (col_idx, row_number))
style.alignment.wrap_text
- else:
- ws.cell('%s%s'%(col_idx, row_number)).value = unicode(
- '%s' % col, errors='ignore')
- except TypeError:
- ws.cell('%s%s'%(col_idx, row_number)).value = unicode(col)
+
+ ws.cell('%s%s' % (col_idx, row_number)).value = col